How to access row data from a MouseLeftButtonDown event on a textblock, in a gridview

I am trying to modify data in rows in a gridview which I have pulled from a database.

The data is being bound to each gridview column like the following.

<GridViewColumn Header="Status"
Width="120" util:GridViewSort.PropertyName="Status">
    <GridViewColumn.CellTemplate>
        <DataTemplate>
            <TextBlock Text="{Binding Path=Status}" FontWeight="Bold" MouseLeftButtonDown="TextBlock_MouseLeftButtonDown_1"/>
        </DataTemplate>
    </GridViewColumn.CellTemplate>
</GridViewColumn>

I have a MouseLeftButtonDown event on the textblock, and this fires when I click on the specific text.

                                       

private void TextBlock_MouseLeftButtonDown_1(object sender,
MouseButtonEventArgs e)
{
    MessageBox.Show("Hello");
}

The issue I am having is that I can't find a way to access the row data(such as the id, or the text in the row).

Is there any way to access all the row data from within the click event?

Thanks

Last updated:2/24/2015 5:10:21 AM

1 Answers

Anonymous User
Anonymous User

Try This:

  private void TextBlock_MouseLeftButtonDown_1(object sender, MouseButtonEventArgs e)
    {
        TextBlock textBlock = (sender as TextBlock);
        string text = textBlock.Text;// Text in the TextBlock
        object datacontext = textBlock.DataContext; // datacontext, Entire row info
    }

Answer