如何修复 UltraGrid 中的 'Key already exists Parameter name: Key' 错误?
How to fix 'Key already exists Parameter name: Key' error in UltraGrid?
我想在编码开始时将 Grid Column 设置为编码的 Grid InitializeLayout 事件。
UltraGridColumn ugc = null;
ugc = e.Layout.Bands[0].Columns.Add(key,caption);
ugc = e.Layout.Bands[0].Columns.Add(key2, caption2);
ugc.CellAppearance.TextHAlign = HAlign.Left;
ugc.Width = 190;
ugc.LockedWidth = true;
每次您搜索时,我都尝试通过从数据库接收一个值作为 DataTable 来绑定到 Grid DataSource。
uGrid.DataSource = dt;
此代码导致错误。
Key already exists Parameter name: Key
我不知道是什么导致了这个错误。我做错了什么?
在 InitializeLayout 事件中检查列是否存在,然后再添加。这样就可以防止重复。
//像这样
if(!e.Layout.Bands[0].Columns.Exists("key"))
e.Layout.Bands[0].Columns.Add(key,caption);
我想在编码开始时将 Grid Column 设置为编码的 Grid InitializeLayout 事件。
UltraGridColumn ugc = null;
ugc = e.Layout.Bands[0].Columns.Add(key,caption);
ugc = e.Layout.Bands[0].Columns.Add(key2, caption2);
ugc.CellAppearance.TextHAlign = HAlign.Left;
ugc.Width = 190;
ugc.LockedWidth = true;
每次您搜索时,我都尝试通过从数据库接收一个值作为 DataTable 来绑定到 Grid DataSource。
uGrid.DataSource = dt;
此代码导致错误。
Key already exists Parameter name: Key
我不知道是什么导致了这个错误。我做错了什么?
在 InitializeLayout 事件中检查列是否存在,然后再添加。这样就可以防止重复。
//像这样
if(!e.Layout.Bands[0].Columns.Exists("key"))
e.Layout.Bands[0].Columns.Add(key,caption);