0

DevExpress を使用しています。私のプロジェクトでは、EditValue が「int」型のプロパティにバインドされているコントロール (textEdit) があります。問題は、コントロールが数字しか入力できないことです。

私の仕事は次のとおりです。フォームが編集モードになっている間、textEdit は「自動」という単語を表示し、安全なボタンを押した後にのみ番号が生成されるはずです。編集モードのテキストボックスに「0」が表示されるようになりましたが、「0」の場合に「自動」と表示することは可能ですか。

textBox がバインドされているプロパティがあります。

int fEventNr;
public int EventNr {
    get { return fEventNr; }
    set { SetPropertyValue<int>("EventNr", ref fEventNr, value); }
}

「0」が表示されることを除いてすべてが機能し、「自動」を表示する方法がわかりません。

4

3 に答える 3

0
txtEdit.Properties.NullText = "Automatic";
txtEdit.EditValue = null;

EditValue が null の場合にユーザーが値を提供していないことを確認できるように、変更public int EventNrを検討してください。「自動」で生成する必要があります:) 0 を [値が設定されていません] と見なすのは悪い習慣だと思います。public int? EventNrそれがヌルを発明した理由です。

于 2012-10-27T19:39:42.743 に答える
0

これはあなたの問題の解決策です:

textEdit1.Properties.CustomDisplayText += new Properties_CustomDisplayText;


void Properties_CustomDisplayText(object sender, DevExpress.XtraEditors.Controls.CustomDisplayTextEventArgs e)
{
    if (yourCondition)
        e.DisplayText = "Automatic";
} 
于 2012-10-25T09:03:43.487 に答える