2011-11-18 149 views
0

我試圖從datagrid中的單元格中獲取值,下面的代碼將單元格中的值作爲「System.Windows.Controls.Textblock」返回,而我想要實際值從細胞。我正在嘗試使用的列是代碼中的ID。在Silverlight Datagrid中檢索單元格值

任何幫助將不勝感激,謝謝!

<sdk:DataGrid AutoGenerateColumns="False" Height="245" HorizontalAlignment="Left" Margin="12,77,0,0" Name="dataIssue" VerticalAlignment="Top" Width="512"> 
    <sdk:DataGrid.Columns> 
    <sdk:DataGridTextColumn IsReadOnly="True" Binding="{Binding Path=ID}" Header="ID"/> 
    <sdk:DataGridTextColumn IsReadOnly="True" Binding="{Binding Path=subject}" Header="Subject"/> 
    <sdk:DataGridTextColumn IsReadOnly="True" Binding="{Binding Path=project_ID}" Header="Project ID"/> 
    <sdk:DataGridTextColumn IsReadOnly="True" Binding="{Binding Path=elapsed}" Header="Time"/> 
    </sdk:DataGrid.Columns> 
</sdk:DataGrid> 


public void StartTimer(object o, RoutedEventArgs sender) 
{ 
    if ((string)timeButton.Content == "Start") 
    { 

    string getID = dataIssue.Columns[0].GetCellContent(dataIssue.SelectedItem).ToString(); 
    child.GetID = getID; 
    watch.Start(); 
    timeButton.Content = "Stop"; 
    } 
} 
+0

>此類只有通過DataGrid的風格訪問或XAML可用和模板。 (c)關於DataGridCell的MSDN –

+0

哦,這個類是Button_Click的,我只是忘了包含那個lol。 –

回答

1

嘗試像這樣...

TextBlock txtBlock=(TextBlock) myGrid.Columns[1].GetCellContent(myGrid.SelectedItem); 

string retrivingtext = txtBlock.Text; 

這裏myGrid=GridName:

TextBlock的=列的類型像

+0

這很好,謝謝! –

+1

在哪個事件中我應該放入此代碼? –