程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> C#入門知識 >> 解決DevExpress Grid"輸入字符串的格式不正確“問題的正確辦法

解決DevExpress Grid"輸入字符串的格式不正確“問題的正確辦法

編輯:C#入門知識

使用DEV控件的grid時,動態的創建列,如果將已經有數據的某一列清空(包括輸入後又清空),會提示”輸入字符串的格式不正確“,在網上找到了一些關於該問題的處理方法。包括半官方的”慧都控件網“,給出的方法如下:

注:前提是將該字段的ColumnEdit設置為下述的RepositoryItemTextEdit

處理RepositoryItemTextEdit的事件ParseEditValue即可,代碼如下: 

private void RepositoryItemTextEdit_ParseEditValue(object sender, DevExpress.XtraEditors.Controls.ConvertEditValueEventArgs e)
{
    TextEdit edit = (TextEdit)sender;
    if (edit.Text == string.Empty)
        e.Value = null;
} 包括另一個朋友給的另一段更復雜一點的代碼,兩段代碼我都試過了,是可以清空了。但是只要一點擊該字段,該輸入框就是空的了,雖然不輸入任何值,直接移開焦點,原數據還在。要清空的話,得先隨便輸入一個值,然後再把輸入的這個值清掉。這樣的操作實在有點坑爹。不知道為何會是這樣的效果,是不是因為DEV版本不致的原因。我用的是9.1.3。問題總得解決啊,只好自己摸索,發現用如下的代碼在我這裡可以完美解決:

private void repositoryItemTextEdit1_ParseEditValue(object sender, DevExpress.XtraEditors.Controls.ConvertEditValueEventArgs e)
{
  object obj = e.Value;
  if (obj==null||obj.ToString()==string.Empty)
  e.Value = null;
}

需要的朋友可以參考下,具體原理我沒有分析。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved