0
Xaml:Не удалось найти ряд из Datagrid МОФ
<DataGrid
Name="dgIssuedItemsBatchWise"
AutoGenerateColumns="False"
CanUserAddRows="False"
Loaded="dgIssuedItemsBatchWise_Loaded"
LoadingRow="dgIssuedItemsBatchWise_LoadingRow"
LoadingRowDetails="dgIssuedItemsBatchWise_LoadingRowDetails"
>
<DataGrid.CellStyle>
<Style TargetType="DataGridCell">
</Style>
</DataGrid.CellStyle>
<DataGrid.RowHeaderTemplate>
<DataTemplate>
<Expander
Expanded="Expander_Expanded"
Collapsed="Expander_Collapsed">
</Expander>
</DataTemplate>
</DataGrid.RowHeaderTemplate>
<DataGrid.Columns>
<DataGridCheckBoxColumn
Width="100"
Binding="{Binding IsIndentIssue,UpdateSourceTrigger=PropertyChanged}"
>
<DataGridCheckBoxColumn.Header >
<TextBlock
FontWeight="Bold"
Text="Is Selected"
/>
</DataGridCheckBoxColumn.Header>
</DataGridCheckBoxColumn>
<!--<DataGridCheckBoxColumn Width="100" Header="Is Selected" Binding="{Binding IsIndentIssue}" />-->
<DataGridTextColumn
Width="150"
IsReadOnly="True"
Header="Item Name"
FontWeight="Bold"
Binding="{Binding ItemName}"
/>
<DataGridTextColumn
Width="100"
IsReadOnly="True"
Header="Item Code"
FontWeight="Bold"
Binding="{Binding ItemCode}"
/>
<DataGridTextColumn
Width="100"
IsReadOnly="True"
x:Name="reqQuantity"
Header="Required Quantity"
FontWeight="Bold"
Binding="{Binding Quantity}" />
<DataGridTextColumn
Width="100"
IsReadOnly="True"
x:Name="issQty"
Header="Issued Quantity"
FontWeight="Bold"
Binding="{Binding IssueQuantity}"
/>
</DataGrid.Columns>
<DataGrid.RowDetailsTemplate>
<DataTemplate>
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto" ></RowDefinition>
<RowDefinition Height="Auto"></RowDefinition>
</Grid.RowDefinitions>
<DataGrid Grid.Row="0"
Height="Auto"
Padding="10,10,10,10"
Width="1320"
Grid.ColumnSpan="5"
ItemsSource="{Binding BatchWiseItems,UpdateSourceTrigger=PropertyChanged}"
x:Name="dgIssuedItemsBatchDetails"
AutoGenerateColumns="False"
HorizontalAlignment="Stretch"
VerticalAlignment="Center"
CanUserAddRows="False"
>
<DataGrid.Columns>
<!--<DataGridTextColumn Width="440" >
<DataGridTextColumn.Header>
<CheckBox
HorizontalAlignment="Center"
VerticalAlignment="Center" />
</DataGridTextColumn.Header>
</DataGridTextColumn>-->
<DataGridCheckBoxColumn
Width="100"
Binding="{Binding IsItemIssued,UpdateSourceTrigger=PropertyChanged}">
<DataGridCheckBoxColumn.Header >
<TextBlock
FontWeight="Bold"
Text="Is Issued"
/>
</DataGridCheckBoxColumn.Header>
</DataGridCheckBoxColumn>
<!--<DataGridCheckBoxColumn Width="100" Header="Is Issued" Binding="{Binding IsIndentIssue}" />-->
<DataGridTextColumn
Binding="{Binding BatchNo}"
Width="440" >
<DataGridTextColumn.Header>
<TextBlock
FontWeight="Bold"
Text="Batch No"
/>
</DataGridTextColumn.Header>
</DataGridTextColumn>
<DataGridTextColumn
Binding="{Binding Quantity}"
Width="440" >
<DataGridTextColumn.Header>
<TextBlock
FontWeight="Bold"
Text="Quantity"
/>
</DataGridTextColumn.Header>
</DataGridTextColumn>
</DataGrid.Columns>
</DataGrid>
<!--<TextBox Grid.Row="1" HorizontalAlignment="Center" VerticalAlignment="Center" Width="200" ></TextBox>-->
</Grid>
</DataTemplate>
</DataGrid.RowDetailsTemplate>
</DataGrid>
мне нужно изменить цвет строки на основе некоторых расчетов. В GridView мы имеем RowDataBound
события, но в DataGrid кто-то предложить мне использовать DataGrid_LoadingRow
event.I использовать это событие как
private void dgIssuedItemsBatchWise_LoadingRow(object sender, DataGridRowEventArgs e)
{
DataRowView item = e.Row.Item as DataRowView ;
if (item != null)
{
}
}
, но каждый раз, когда я получаю деталь как null.Someone предложить мне, как решить эту проблему или изменить цвет строки в WPF DataGrid.
вы имеете в виду, что 'DaatGrid' помещается внутри' ListView' ? если это так, тогда вы должны поместить 'ListView' xaml ind свой' DataTemplate'. Поскольку для других не ясно, что DataGrid находится в 'DataTemplate'' ListView'. В additiiob существуют свойства, такие как 'AlternatingRowBackground =" Brown "и' AlternationCount = "2" '. – StepUp
нет нет списка. Я использую gridview сам .. – Rahul
просто 'DataGrid'? – StepUp