簡體   English   中英

DataGridView comboboxcolumn動態綁定

[英]DataGridView comboboxcolumn dynamic binding

我正在為C#中的SQL Server DB構建一個非常基本的表編輯器; 基本上有點像MS Access用來編輯表格的舊表格。

到目前為止,我在表單上有一個組合框,您可以在其中選擇要編輯的表,然后是一個datagridview,顯示已在組合框中選擇的表。

我想根據列是否有關系在運行時添加comboboxcolumns,以便用戶可以看到他們選擇的值,而不僅僅是ID。

因此,基本上,在用戶選擇表之前,我不知道combobox列需要放置在哪里(或它們需要綁定到什么數據)。 因此,這必須在運行時用代碼完成。

到目前為止,我正在使用以下方法填充datagridview:

String connectionString = sConnection;
dataAdapter = new SqlDataAdapter(selectCommand, connectionString);
SqlCommandBuilder commandBuilder = new SqlCommandBuilder(dataAdapter);
// Populate a new data table and bind it to the BindingSource.
DataTable table = new DataTable();
table.Locale = System.Globalization.CultureInfo.InvariantCulture;
dataAdapter.Fill(table);
bindingSource2.DataSource = table; 

所以我想我的路線將是這樣的:填充dgv,遍歷各列以查找具有關系的任何內容(我該怎么做?!?),然后將類型更改為comboboxcolumn,然后更改displaymember和它的valuemember屬性可以滿足它們的需要(我將需要從某個地方獲取它...如何?)

有人可以用我的方式拋出一些代碼來指示我正確的方向嗎?

謝謝

這有可能:假設您有表Employee和Department,您可以發現Employee表中的deptId擁有一個到Department.DeptId的FK,很好,那么您可以獲取Department表的所有列。

有關如何查找您感興趣的FK(對於當前選定的表),對於Google,例如,我已經找到了它: http : //blog.sqlauthority.com/2007/09/04/sql-server-2005在數據庫中找到帶有外鍵約束的表

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM