Actualmente estoy trabajando en una cuadrícula de datos C# WPF. Tengo un DataGrid que tiene columnas generadas automáticamente y el código se conecta a una base de datos SQLite y crea un conjunto de datos, y luego este conjunto de datos se establece como DataGrid ItemsSource.cuadrícula de datos de fila del fondo Según el valor del celular
A continuación se muestra el código con el XAML de la cuadrícula de datos
<DataGrid AutoGenerateColumns="True"
Margin="12,71,12,32"
Name="tblLog"
ColumnWidth="*"
CanUserResizeRows="False"
AreRowDetailsFrozen="False"
CanUserAddRows="True"
CanUserDeleteRows="True"
IsReadOnly="True"
MouseDoubleClick="tblLog_MouseDoubleClick">
</DataGrid>
y abajo es el código para establecer la ItemsSource de la cuadrícula de datos
try
{
DataSet ds = new DataSet();
SQLiteDataAdapter da = new SQLiteDataAdapter(query, db.conn);
da.Fill(ds);
//tblGrid.AutoGenerateColumns = true;
tblGrid.ItemsSource = ds.Tables[0].DefaultView;
}
catch (SQLiteException ex)
{
MessageBox.Show("Unable to retrieve logins from database.\n\n" + ex.Message + "\n\nError Code: " + ex.ErrorCode);
}
Las columnas que se muestran en la base de datos (automático generado) son ID, fecha, hora, estado. Lo que necesito hacer es si el valor en una fila de la columna de estado es igual a Error al cambiar el color de fondo de esa fila.
asumo tengo que añadir algún tipo de etiquetas de estilo y DataTriggers dentro de las etiquetas de DataGrid, pero no está seguro de lo que necesito. Todo lo que he intentado con el código que establece ItemsSource muestra un error que dice que el origen debe estar vacío antes de agregar el ItemsSource.
Gracias por cualquier ayuda que pueda proporcionar.
La forma celdas y filas estilo que es mediante el uso de estilos sin codificar sin nombre. Se aplican a todos los elementos cuando especificamos su TargeType. http://www.codeproject.com/KB/WPF/WPFDataGridExamples.aspx –