2012-02-14 33 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(); 

Qualche idea su come unire queste due colonne?Unisci 2 colonne da datatable in datatextfield da dropdownlist

+1

Benvenuti in StackOverflow: se inserisci codice, XML o campioni di dati, ** per favore ** evidenzia quelle righe nell'editor di testo e fai clic sul pulsante "esempi di codice" ('{}') sulla barra degli strumenti dell'editor per formattarlo bene e sintassi evidenziarlo! –

risposta

24

Avrete bisogno di una colonna di nome completo nella tabella dei dati come DataTextField può riferirsi a un solo singolo campo:

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(); 

dovrebbe farlo

(Si potrebbe anche aggiungere questa colonna nel vostro SQL query)

+0

Sì, Sì, Sì !!! ha funzionato bene, grazie mille :) – Alex

+0

@Alex, sembri essere nuovo su StackOverflow, se trovi una risposta valida, puoi votarla usando la freccia su. Tra le risposte multiple che potresti ricevere per la tua domanda, puoi selezionare quella più appropriata facendo clic sul segno di spunta. Non cerco reputazione ma solo per farti sapere ... Benvenuto :) –