zoukankan      html  css  js  c++  java
  • wpf 控件获取焦点 ,及DataGrid模板、编辑相关

    <DataGridTemplateColumn Header="Template" >
                        <DataGridTemplateColumn.CellTemplate>
                            <DataTemplate>
                                <TextBlock Text="{Binding xxx}"/>
                            </DataTemplate>
                        </DataGridTemplateColumn.CellTemplate>
                        <DataGridTemplateColumn.CellEditingTemplate>
                            <DataTemplate>
                                <TextBox x:Name="tbxxx" Text="{Binding xxx}" FocusManager.FocusedElement="{Binding RelativeSource={RelativeSource Self}}"></TextBox>
                            </DataTemplate>
                        </DataGridTemplateColumn.CellEditingTemplate>
                    </DataGridTemplateColumn>

     1: TextBox 自动获取焦点

    <TextBox  FocusManager.FocusedElement="{Binding RelativeSource={RelativeSource Self}}"></TextBox>
    

      

     2:TextBox获取焦点全选文本 :https://www.cnblogs.com/akiing/p/9717270.html

    WPF使用DataGrid 时,如果使用 DataGridTextColumn 列,进入编辑模式,点击后会直接将文本框全选。

    但是如果使用  DataGridTemplateColumn 列时,DataTemplate 下绑定 TextBox,进入编辑模式并不会全选。

    如果在模板列中的TextBox使用1方式,能使控件获取焦点(让鼠标进入TextBox)但是不会触发任何事件,比如 GotFocus 、GotKeyboardFocus等

    如果在模板列中的TextBox使用2方式,能使控件在获取焦点时全选,但是相比较DataGrid的DataGridTextColumn 方式,需要多点击一次。

    另外在DataGrid 控件的 BeginningEdit 、CellEditEnding 事件中获取不到  CellEditingTemplate  模板中的控件 TextBox.。

    做个记录,继续寻找解决方案中...

  • 相关阅读:
    Understanding Paths in ASP.NET
    C#通过shell32来控制本地连接
    利用outlook发邮件
    角色扮演游戏引擎的设计原理[转载]
    Lvalues and Rvalues
    链接字符串里面不要加上connection timeout =0
    Winform获取当前拥有焦点的控件
    Spring 3.x jar 包详解 与 依赖关系
    Liferay环境搭建、简单说明与相关资料
    爆音(杂音)问题的推论与解决
  • 原文地址:https://www.cnblogs.com/liumang/p/14283337.html
Copyright © 2011-2022 走看看