Wenn Sie mit Zahlen arbeiten, empfehle ich Ihnen SpinEdit verwenden. Verwenden Sie die RepositoryItemSpinEdit.MaxValue und RepositoryItemSpinEdit.MinValue Eigenschaften, um es zu beschränken, nur negative Zahlen zu akzeptieren.
spinEdit1.Properties.MaxValue = -1;
spinEdit1.Properties.MinValue = decimal.MinValue;
Wenn Sie TextEdit benötigen, schlage ich vor, Sie verwenden Abdellahs Maske. Damit Sie TextEdit.EditValue als Zahl statt als Zeichenfolge verwenden, verwenden Sie das Ereignis ParseEditValue.
textEdit1.Properties.Mask.EditMask = "-[0-9]*[.]{0,1}[0-9]*";
textEdit1.Properties.Mask.MaskType = DevExpress.XtraEditors.Mask.MaskType.RegEx;
private void textEdit1_ParseEditValue(object sender, DevExpress.XtraEditors.Controls.ConvertEditValueEventArgs e) {
if (e.Value is string) {
e.Value = double.Parse(e.Value.ToString());
e.Handled = true;
}
}
Wenn Sie glauben, dass es ein Fehler * ist, sollten Sie mit DevEx sprechen, weil wir nichts dagegen tun können. Wie auch immer, du * hast * die Follow-up-Kommentare zu der Antwort in dem Beitrag gelesen, den du in den DevEx-Foren verlinkt hast, was auch eine alternative Lösung bietet, oder? –