列内のすべての要素の合計が<=100であるなど、gridView列を検証する必要があります。
ユーザーが値を入力し、合計が制限を超えた場合、カスタムエラーメッセージを表示したいと思います。
コラムのrepositoryeditでこのイベントを使用してみました。
void pinEditRepositoryItem_Validating(object sender, System.ComponentModel.CancelEventArgs e)
{
e.Cancel = true;
gridview1.SetColumnError(m_imixGridView.Columns["MyColumn"], "ColumnSum must be <= 100", DevExpress.XtraEditors.DXErrorProvider.ErrorType.Critical);
}
ただし、設定する場合
e.Cancel = true;
デフォルトのメッセージ「無効な値」が表示されます。
私が使用する場合
gridview1.SetColumnError(m_imixGridView.Columns["MyColumn"], "ColumnSum must be <= 100", DevExpress.XtraEditors.DXErrorProvider.ErrorType.Critical);
ただ、エラーメッセージは正しいですが、外側をクリックするとフォーカスが失われます。
行を検証する方法は複数あることを確認しましたが、この場合に最適なソリューションは見つかりませんでした。
検証が失敗した場合、セルの「フォーカス解除」を無効にすることは可能ですか?
どうもありがとう!