2012-02-14 70 views
6
var id = Session["staff_id"].ToString() 

//I have datatable with 5 columns 

DataTable dt = function_return_Datatable(id); 

dropdownlist1.DataSource = dt; 

/*in DataTextField I want to merge two columns of DataTable, dt.columns [1] is First Name and dt.columns [2] is LastName*/ 

//I tried this way to merge them, but no results 
dropdownlist1.DataTextField = dt.Columns[1].ToString()+" "+dt.Columns[2].ToString(); 

dropdownlist1.DataValueField = dt.Columns[0].ToString(); 
dropdownlist1.DataBind(); 

有關如何合併這兩列的任何想法?從下拉列表中合併數據表中的數據表中的2列

+1

歡迎使用StackOverflow:如果您發佈代碼,XML或數據樣本,請**在文本編輯器中突出顯示這些行,然後單擊編輯器工具欄上的「代碼示例」按鈕(「{}」)以很好的格式和語法突出顯示它! – 2012-02-14 10:14:44

回答

24

你會在你的數據表需要一個完整的名字列DataTextField可以指只有一個單場:

DataTable dt = function_return_Datatable(id); 
dt.Columns.Add("FullName", typeof(string), "FirstName + ' ' + LastName"); 

dropdownlist1.DataSource = dt; 
dropdownlist1.DataTextField = "FullName"; 
dropdownlist1.DataValueField = "ID"; 
dropdownlist1.DataBind(); 

應該這樣做

(你也可以在你的SQL添加此列查詢)

+0

是的,是的,是的!工作的權利,非常感謝:) – Alex 2012-02-14 10:39:54

+0

@Alex,你似乎是在StackOverflow新,如果你找到一個有效的答案,你可以通過使用向上箭頭投票。在您的問題中可能會收到多個答案,您可以通過單擊複選標記來選擇最合適的答案。我不是在尋找聲譽,而是爲了讓你知道......歡迎:) – 2012-02-14 10:53:20