Я хочу получить весь текст заголовка из сетки данных в приложении WPF.
Это возможно или нет?
Я хочу получить весь текст заголовка, а не только один текст заголовка. Я хочу получить весь текст заголовка в формате коллекции. Как мы получаем элементы из таблицы данных.
Как:
DataRowView row = (DataRowView)dataGridUserSalesRep.Items.GetItemAt(0);
XAML:
<DataGrid x:Name="dataGridUserSalesRep" TextElement.FontStretch="Normal" FontSize="12" FontWeight="DemiBold" ColumnWidth="100" RowHeight="50" Height="568" HorizontalAlignment="Left" VerticalAlignment="Top" Width="1136" FontFamily="Arial" Background="White" AutoGenerateColumns="False" IsReadOnly="True" ColumnHeaderHeight="40" HorizontalGridLinesBrush="{DynamicResource {x:Static SystemColors.GrayTextBrushKey}}" VerticalGridLinesBrush="{DynamicResource {x:Static SystemColors.ControlDarkDarkBrushKey}}" ClipboardCopyMode="IncludeHeader">
<DataGrid.BorderBrush>
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
<GradientStop Color="Black" Offset="0"/>
<GradientStop Color="#FF28689F" Offset="0.033"/>
</LinearGradientBrush>
</DataGrid.BorderBrush>
<DataGrid.Columns >
<DataGridTextColumn x:Name="currDG" Binding="{Binding curr}" FontWeight="Normal" Width="120" ClipboardContentBinding="{x:Null}" Header="Currency">
<DataGridTextColumn.ElementStyle>
<Style>
<Setter Property="TextBlock.TextWrapping" Value="Wrap"/>
</Style>
</DataGridTextColumn.ElementStyle>
</DataGridTextColumn>
<DataGridTextColumn Binding="{Binding profit}" x:Name="totalProfitDG" FontWeight="Normal" Width="160" ClipboardContentBinding="{x:Null}" Header="Total Profit">
<DataGridTextColumn.ElementStyle>
<Style>
<Setter Property="TextBlock.TextWrapping" Value="Wrap"/>
</Style>
</DataGridTextColumn.ElementStyle>
</DataGridTextColumn>
<DataGridTextColumn Binding="{Binding sale}" x:Name="totalSaleDG" FontWeight="Normal" Width="160" ClipboardContentBinding="{x:Null}" Header="Total Sale">
<DataGridTextColumn.ElementStyle>
<Style>
<Setter Property="TextBlock.TextWrapping" Value="Wrap"/>
</Style>
</DataGridTextColumn.ElementStyle>
</DataGridTextColumn>
<DataGridTextColumn x:Name="agentDG" Binding="{Binding agent}" FontWeight="Normal" Width="210" ClipboardContentBinding="{x:Null}" Header="Agent">
<DataGridTextColumn.ElementStyle>
<Style>
<Setter Property="TextBlock.TextWrapping" Value="Wrap"/>
</Style>
</DataGridTextColumn.ElementStyle>
</DataGridTextColumn>
<DataGridTextColumn x:Name="customerNameDG" Binding="{Binding client}" FontWeight="Normal" Width="210" ClipboardContentBinding="{x:Null}" Header="Customer Name">
<DataGridTextColumn.ElementStyle>
<Style>
<Setter Property="TextBlock.TextWrapping" Value="Wrap"/>
</Style>
</DataGridTextColumn.ElementStyle>
</DataGridTextColumn>
<DataGridTextColumn x:Name="dateDG" Binding="{Binding date}" FontWeight="Normal" Width="120" ClipboardContentBinding="{x:Null}" Header="Date" >
<DataGridTextColumn.ElementStyle>
<Style>
<Setter Property="TextBlock.TextWrapping" Value="Wrap"/>
</Style>
</DataGridTextColumn.ElementStyle>
</DataGridTextColumn>
<DataGridTextColumn x:Name="idDG" Binding="{Binding id}" FontWeight="Normal" Width="100" Header="S.Inv" />
</DataGrid.Columns>
</DataGrid>
Код позади:
private DataTable dataTable;
MySqlDataAdapter mySqlAdaptor;
private MySqlCommand cmd;
MySqlDataReader dataReader;
private void displayDataGrideSalesReport()
{
string con = "SERVER=localhost;PORT=3306;DATABASE=salaamhost;UID=root;PASSWORD='';allow zero datetime=true;SslMode=none";
var myconection = new MySqlConnection();
myconection.ConnectionString = con;
cmd = myconection.CreateCommand();
cmd.CommandType = CommandType.Text;
cmd.CommandText = "SELECT sales.sale_id as id,sales.datetime as date ,sales.cash_sale_client_name as client, users.first_name AS agent , sales.grand_total as sale ,sales.profit ,sales.currency as curr FROM sales,users WHERE sales.agent_id = users.user_id group by sales.sale_id ORDER BY sales.sale_id";
myconection.Open();
cmd.ExecuteNonQuery();
dataTable = new DataTable();
mySqlAdaptor = new MySqlDataAdapter(cmd);
mySqlAdaptor.Fill(dataTable);
dataGridUserSalesRep.ItemsSource = dataTable.AsDataView();
}
См. Изображение ниже. Я хочу получить значения зеленого прямоугольника, используя код позади.
