2015-06-14 59 views
2

我無法返回從我的wpf項目中點擊按鈕的哪一行。返回/獲取DataGrid按鈕點擊的行索引

我有以下的那麼遠,

XAML -

<DataGrid x:Name="myDataGrid" HorizontalAlignment="Left" Width="550"> 
     <DataGrid.Columns> 
      <DataGridTextColumn Header="Name"></DataGridTextColumn> 
      <DataGridTemplateColumn Width="200"> 
       <DataGridTemplateColumn.CellTemplate> 
        <DataTemplate> 
         <Button Click="RowEvent">X</Button> 
        </DataTemplate> 
       </DataGridTemplateColumn.CellTemplate> 
      </DataGridTemplateColumn> 
     </DataGrid.Columns> 
    </DataGrid> 

C# -

private void RowEvent(object sender, RoutedEventArgs e) 
    { 
     Button btn = sender as Button; 
    } 

我似乎記得,當我使用在Win窗體一個DataGridView我如果我沒有記錯的話,可以從e.RowIndex得到行索引,但這次我似乎無法做到這一點。

任何人都可以指向正確的方向嗎?

回答

0

只需使用:

DataGrid.SelectedIndex物業

...這樣的:

private void RowEvent(object sender, RoutedEventArgs e) 
    { 
     int index = myDataGrid.SelectedIndex; 
     MessageBox.Show(index.ToString()); 
    } 
0
private void Button_Click(object sender, RoutedEventArgs e) 
     { 
      Button btn = (Button)sender; 
      myDataGrid.GetColumn(btn); 
      myDataGrid.GetRow(btn); 
      MessageBox.Show(myDataGrid.GetColumn(btn).ToString()); 
      MessageBox.Show(myDataGrid.GetRow(btn).ToString()); 
     } 

這是我怎麼做的!我剛剛使用了按鈕的點擊事件

+0

對我不起作用 – Erez

+0

什麼都不起作用?你是否收到了正確的事件? – Gino

+0

什麼是網格?我也不適合我嗎? –