C# 存储库项lookUpEdit在失去焦点后重置
我有这个问题好几天了,找不到解决办法。我尝试了在互联网上找到的所有可能的解决方案,但似乎没有一个适合这个。 问题是,我向gridControls添加了存储库项(我是通过设计器而不是通过代码添加的)。然后,在代码中,我将数据源添加到该存储库lookUpEdit中,并且在该列的下拉列表中有项目。但当我选择存储库中的项并单击其他单元格时,存储库中的选定项将被清除,并且存储库再次显示空值。。。 知道我做错了什么吗 编辑: 而且,当我点击网格中的任何单元格时,我会有一两秒的延迟,在延迟之后,点击的单元格会被聚焦。。。所有这些有什么解决办法吗 编辑: 我不知道要向您显示什么代码,因为我在devExpress设计器中完成了所有操作。这是我将数据源设置为存储库项的部分代码,我将从该存储库项的设计器中为您提供代码C# 存储库项lookUpEdit在失去焦点后重置,c#,devexpress,devexpress-windows-ui,C#,Devexpress,Devexpress Windows Ui,我有这个问题好几天了,找不到解决办法。我尝试了在互联网上找到的所有可能的解决方案,但似乎没有一个适合这个。 问题是,我向gridControls添加了存储库项(我是通过设计器而不是通过代码添加的)。然后,在代码中,我将数据源添加到该存储库lookUpEdit中,并且在该列的下拉列表中有项目。但当我选择存储库中的项并单击其他单元格时,存储库中的选定项将被清除,并且存储库再次显示空值。。。 知道我做错了什么吗 编辑: 而且,当我点击网格中的任何单元格时,我会有一两秒的延迟,在延迟之后,点击的单元格会
private void ConfigureRepositoryItems()
{
BetService.SportManagerClient dbSportManager = new BetService.SportManagerClient();
BetService.BLOddsControlSettings[] oddsControlSettings = dbSportManager.GetOddsControlSettings("", "");
repositoryOddsControlSettings1.DataSource = oddsControlSettings;
}
下面是designer的代码:
//
// repositoryOddsCalculationSettings1
//
this.repositoryOddsCalculationSettings1.AutoHeight = false;
this.repositoryOddsCalculationSettings1.Buttons.AddRange(new DevExpress.XtraEditors.Controls.EditorButton[] {
new DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Combo)});
this.repositoryOddsCalculationSettings1.Columns.AddRange(new DevExpress.XtraEditors.Controls.LookUpColumnInfo[] {
new DevExpress.XtraEditors.Controls.LookUpColumnInfo("ID", "ID", 20, DevExpress.Utils.FormatType.None, "", false, DevExpress.Utils.HorzAlignment.Default),
new DevExpress.XtraEditors.Controls.LookUpColumnInfo("Name", "Name")});
this.repositoryOddsCalculationSettings1.DisplayMember = "Name";
this.repositoryOddsCalculationSettings1.Name = "repositoryOddsCalculationSettings1";
this.repositoryOddsCalculationSettings1.NullText = "Select Settings";
this.repositoryOddsCalculationSettings1.PopupSizeable = false;
this.repositoryOddsCalculationSettings1.ValueMember = "ID";
首先,检查
网格
数据源中的列名与网格控件中的列是否匹配。匹配区分大小写,因此name
和name
不相同,因此可能导致此问题。其次,确保网格
数据源列数据类型与查找编辑
的值类型匹配。如果LookupEdit
返回int
,并且Grid
数据源列的数据类型是string
,这本身就可能会引起很多麻烦。LookupEdit分配到的字段的数据类型是什么?你设置了GridColumn的FieldName属性吗?@Brandon-我在LookUpEdit存储库中创建了两列。“ID”和“Name”。“名称”列显示数据的字符串类型。我的gridControl绑定到dataSource,但我的列没有绑定到dataSource,因此在designer中,我将“fieldName”属性留空,将“Unbound type”属性设置为“String”。我遇到了类似的问题。原因是错误的值成员(我使用了“ID”而不是“ID”)。我的原因是我使用的类使用了字段public int Number代码>而不是属性公共整数{get;set;}