zoukankan      html  css  js  c++  java
  • # WPF DataGrid文本编辑验证

    1. dataGrid.Items.Count 得到dataGrid数量

    2. dataGrid.SelectedIndex 得到选择的Index

    3. JOBIN model = this.dataGrid.Items[Index] as JOBIN 得到JOB类型的选中行的model数据

    4. DataGrid文本编辑验证

      CellEditEnding = “DataGridCellEdit” // xaml 注册事件

      在DataGridCellEdit事件中 代码

      string newvalue = (e.EditingElement as TextBox).Text.ToUppe(); //等到当前编辑的文本内容

      int rowcount = this.getCellRow(dataGrid) ; //得到当前选中行的index

      model .[rowcount ].NewValue = newvalue ; //把当前输入的文本给到model 里面

    5. 在做一个项目时在gird上添加了右键菜单,可测试时在grid的空白区域就时弹不出菜单来。

      因为grid默认是Background="{x:Null}",无法获取到鼠标点击的EventArgs(就相当于空的面板)。 你设置成Background="Transparent" 透明色就可以实现了。

    6. 你可以使用控件的PreviewTextInput 事件来阻止控件接收某些输入的字符。

      要防止某个特定的字符输入到控件,你只要简单的设置TextCompositionEventArgs 类型参数的Handled 属性为true就可以。它将中断控件接收字符输入事件的路由。

      在XAML代码中注册事件:

      <TextBox Text="" HorizontalAlignment="Center" Width="150"     PreviewTextInput="TextBox_PreviewTextInput" />
      

      CS文件代码中实现事件处理函数:

      private void TextBox_PreviewTextInput(object sender, TextCompositionEventArgs e)    {        // No e's allowed        if ((e.Text == "e") || (e.Text == "E"))            e.Handled = true;    }
          
      

      我们组织了‘e’和‘E’这两个字符的输入,在TextBox 中输入这两个字符将不会被接收。

      在XAML代码中注册PreviewKeyDown 在CS文件事件中 e.Handled = true 禁止输入(去掉Input中的if判断)

  • 相关阅读:
    go 异常处理
    win10一行代码搭建本地html项目
    github搭建html网站到外网
    python生成动态个性二维码
    python+selenium通过加载用户配置实现免登陆
    python搭建本地共享文件服务器
    python画猫并打包成EXE文件
    python批量爬取猫咪图片
    解决-Chrome插件安装时程序包无效:"CRX_HEADER_INVALID"的错误
    移动自动化测试框架--openatx
  • 原文地址:https://www.cnblogs.com/DingGuo/p/13634892.html
Copyright © 2011-2022 走看看