我有一個WPF數據網格,並且默認情況下我已將編輯模式設置爲關閉。 我在數據網格上有一個更新圖標,當我點擊每一行上的更新圖標時,我想要將編輯模式設置爲打開,並且數據網格的第一個單元格應該被集中。Datagrid基於數據網格中的單元格點擊設置編輯模式
<DataGrid Grid.Row="2" Name="dgList" Margin="0,10,0,0" ItemsSource="{Binding List,Mode=TwoWay}" RowHeight="40" ColumnWidth="*"
AutoGenerateColumns="False" CanUserAddRows="False" MouseLeftButtonDown="dgList_MouseLeftButtonDown"
PreviewMouseLeftButtonDown="dgList_PreviewMouseLeftButtonDown" >
<DataGrid.Columns>
<DataGridTemplateColumn Header="Image" MinWidth="250" IsReadOnly="True">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<Image Source="{Binding Path=Image, Converter={StaticResource ucconvertToImage}}"/>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
<DataGridTextColumn Header="Name" MinWidth="250" Binding="{Binding Path=Name,Mode=TwoWay}" IsReadOnly="True"></DataGridTextColumn>
<DataGridCheckBoxColumn Header="Is Active" MinWidth="250" Binding="{Binding Path=IsActive}" IsReadOnly="True"></DataGridCheckBoxColumn>
<DataGridTemplateColumn Header="Update" MinWidth="50" MaxWidth="50" SortMemberPath="EditMode" IsReadOnly="False">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<Image Source="Icons/Update.jpg">
</Image>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
</DataGrid.Columns>
</DataGrid>
我想檢查我的更新圖標,首先檢查單擊如果是更新列,然後設置isreadonly爲真。 我使用下面的代碼來做到這一點,但是,我將發件人作爲整個數據網格而不是單元格。
private void dgList_PreviewMouseLeftButtonDown(object sender, MouseButtonEventArgs e)
{
DataGridCell cell = sender as DataGridCell;
if (cell != null)
{
dgList.IsReadOnly = true;
}
}
如何將數據網格屬性設置爲編輯模式爲一行,單擊該行上的更新圖標。
你的問題是什麼呢?請縮小到具體問題。感謝和問候, –