У меня есть это представление таблицы данных, в котором заполняется непосредственно из привязки с базой данных.
Я получаю данные из базы данных в контроллере типа OleDbAdapter
и извлекаю их в главном окне, помещаю их в представление сетки данных,После этого я добавляю кнопки для EDIT
и DELETE
, используя DataGridTemplateColumn
в Main Window.xaml
.
PROGRAM_CONTROLLER.CS
public OleDbDataAdapter GetProgramList()
{
OleDbDataAdapter da = null;
try
{
con.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0; Data Source=" + Path + ";Persist Security Info=True";
if (con.State != ConnectionState.Open)
{
con.Open();
}
OleDbCommand cmd = new OleDbCommand();
cmd.Connection = con;
cmd.CommandText = "select * from program";
return new OleDbDataAdapter(cmd);
}
catch(Exception ex)
{
return da;
}
finally
{
con.Close();
}
}
MAIN WINDOW.CS
Program_Controller _PController = new Program_Controller();
OleDbDataAdapter da = _PController.GetProgramList();
DataTable dt = new DataTable();
da.Fill(dt);
dataGridProgram.ItemsSource = dt.AsDataView();
MAIN WINDOW.XAML
<WrapPanel Margin="20,0,20,20" HorizontalAlignment="Center">
<DataGrid AutoGenerateColumns="True" Name="dataGridProgram" SelectionMode="Single" FontSize="15" BorderThickness="1" IsReadOnly="true" Height="300" Width="700">
<DataGrid.Columns>
<DataGridTemplateColumn>
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<Button x:Name="btnEdit" Content="Edit" Height="Auto" Width="75" Margin="10" Click="btnEdit_Click"/>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
<DataGridTemplateColumn>
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<Button x:Name="btnDelete" Content="Delete" Height="Auto" Width="75" Margin="10" Click="btnDelete_Click"/>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
</DataGrid.Columns>
</DataGrid>
</WrapPanel>
В настоящее время в результате вывода отображаются кнопки EDIT
и DELETE
находятся в первом и втором столбце, как это.
Как я могу переместить их в конец строки и как поместить их обоих втолько один столбец?
РЕДАКТИРОВАТЬ: Я хочу только столбец кнопок на задней панели, другие должны оставаться в соответствии с последовательностью столбцов в базе данных