2013-07-01 36 views
-2

我不確定這爲什麼不起作用。我有一個DataGrid,我想創建一個基於每個項目的選擇,將導航我的應用程序無法將對象轉換爲字符串

private void MedicationDatagrid_SelectionChanged(object sender,SelectionChangedEventArgs e) 
    { 
     SelectedMedication = MedicationData.RetrieveMedicationByBarcode(MedicationDatagrid.SelectedItem, string.Empty, 0); 

    } 
+0

'MedicationDatagrid.SelectedItem.ToString()'? –

+2

「MedicationData.RetrieveMedicationByBarcode」的簽名是什麼? –

回答

3

製作的下一個部分的假設SelectedMedicationstring,那麼這樣的:

SelectedMedication = MedicationData.RetrieveMedicationByBarcode(
    MedicationDatagrid.SelectedItem, 
    string.Empty, 
    0) as string; 

會想像得到的工作。但是,我們有不知道什麼是從RetrieveMedicationByBarcode返回,因此您可能需要overrideToString()該類型的方法,使其按照您所期望的方式工作。

但是,也可能是問題是MedicationDatagrid.SelectedItem,並且該方法預計將作爲第一個參數string。如果是這樣的話,那麼這個:

SelectedMedication = MedicationData.RetrieveMedicationByBarcode(
    MedicationDatagrid.SelectedItem as string, 
    string.Empty, 
    0); 

會想象解決您的問題。