【问题标题】:DevExpress & C# : Validate RepositoryItemLookUpEdit cell after choosing valueDevExpress & C#:选择值后验证 RepositoryItemLookUpEdit 单元格
【发布时间】:2014-07-21 04:32:35
【问题描述】:

我有一个 GridView,其中有这个专栏:

bandedGridColumn.ColumnEdit = InitEdit_Material();

这里是 InitEdit_Material 方法:

public static RepositoryItemLookUpEdit InitEdit_Material()
{
    RepositoryItemLookUpEdit riMaterial = new RepositoryItemLookUpEdit();

    riMaterial.Columns.Add(new LookUpColumnInfo("ID", "ID"));
    riMaterial.Columns.Add(new LookUpColumnInfo("CustomsMaterial.Name", "Name"));

    riMaterial.DataSource = Service.GetAll(svc.EntityTypeToGet.Material).Data.All_Material;

    riMaterial.DisplayMember = "MaterialFullname";
    riMaterial.ValueMember = "ID";

    riMaterial.AutoSearchColumnIndex = 1;
    riMaterial.BestFitMode = BestFitMode.BestFitResizePopup;
    riMaterial.NullText = "";


    return riMaterial;
}

这就是它的样子:

每当用户在此单元格中选择一个新值时,我想执行一些操作(根据当前单元格值设置其他单元格的值),但问题是我知道的所有可能事件只有在单元格失去焦点时才会触发,我'试过了:

private void vwVD_ValidatingEditor(object sender, BaseContainerValidateEditorEventArgs e)
{
    if (vwVD.FocusedColumn.Name == "colMaterialID") 
        MessageBox.Show("only show when focus lost");
    return;
}

private void vwVD_CellValueChanged(object sender, CellValueChangedEventArgs e)
{
    if (e.Column.Name != "colMaterialID") return;

    MessageBox.Show("only show when focus lost");
}

【问题讨论】:

    标签: c# validation repository devexpress


    【解决方案1】:

    你可以尝试使用GridView.CellValueChanging事件:

    private void vwVD_CellValueChanging(object sender, CellValueChangedEventArgs e)
    {
        if (vwVD.FocusedColumn.Name == "colMaterialID")
        {
            //Perform some actions. Use e.Value.
        }
    }
    

    【讨论】:

    • 嘿伙计,抱歉回复晚了,这对我来说很好,谢谢
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-03-24
    • 1970-01-01
    相关资源
    最近更新 更多