2016-02-28 59 views
-1

我新来使用C#和WPF工作我有一个模型,什么是最好的WPF控件,使这项工作?

我在这里有一个模型,我不确定最好的方式去设计它在XAML/C#中。 enter image description here

(图像是在一个矢量程序制成)

我知道有其它网格之间ListView和列表框控制,我可以使用。 我不知道该用什么。

我想让行和列具有可见行(2px),它必须有一个垂直滚动条。由于该列表将在运行时添加项目,因此必须具有添加内容的格式。 另外,我想使用复选框进行选择,而不是使用蓝色突出显示。这很容易完成吗?

任何指导或建议赞赏

+0

您可以使用其中任何一个。如果允许用户更改数据,则应使用DataGrid,对于该复选框,可以为其添加样式,当选中某行时触发。 – Sakura

+0

那么用户将点击一个按钮“添加”来添加一个新的项目。它不必直接编辑。 – CodingNewb

回答

1

简单的DataGrid是要走的路。

可以建立在此:

<DataGrid x:Name="DGrid2" VerticalScrollBarVisibility="Visible" AutoGenerateColumns="False"> 
    <DataGrid.VerticalGridLinesBrush> 
     <SolidColorBrush Color="Red"/> 
    </DataGrid.VerticalGridLinesBrush> 
    <DataGrid.HorizontalGridLinesBrush> 
     <SolidColorBrush Color="Red"/> 
    </DataGrid.HorizontalGridLinesBrush> 
    <DataGridTemplateColumn Header="#"> 
     <DataGridTemplateColumn.CellTemplate> 
      <DataTemplate> 
       <TextBlock Text="{Binding SNo}" /> 
      </DataTemplate> 
     </DataGridTemplateColumn.CellTemplate> 
    </DataGridTemplateColumn> 
    <DataGridTemplateColumn> 
     <DataGridTemplateColumn.CellTemplate> 
      <DataTemplate> 
       <StackPanel Orientation="Horizontal"> 
        <Label Content="{Binding F1}" BorderThickness="0 0 1 0" BorderBrush="Red" /> 
        <Label Content="{Binding F2}" /> 
       </StackPanel> 
      </DataTemplate> 
     </DataGridTemplateColumn.CellTemplate> 
    </DataGridTemplateColumn> 
    <DataGridTemplateColumn> 
     <DataGridTemplateColumn.CellTemplate> 
      <DataTemplate> 
       <TextBlock Text="{Binding Field1}" /> 
      </DataTemplate> 
     </DataGridTemplateColumn.CellTemplate> 
    </DataGridTemplateColumn> 
    <DataGridTemplateColumn> 
     <DataGridTemplateColumn.HeaderTemplate> 
      <DataTemplate> 
       <CheckBox/> 
      </DataTemplate> 
     </DataGridTemplateColumn.HeaderTemplate> 
     <DataGridTemplateColumn.CellTemplate> 
      <DataTemplate> 
       <CheckBox /> 
      </DataTemplate> 
     </DataGridTemplateColumn.CellTemplate> 
    </DataGridTemplateColumn> 
    <DataGridTemplateColumn Header="Description"> 
     <DataGridTemplateColumn.CellTemplate> 
      <DataTemplate> 
       <TextBlock Text="{Binding Description}" /> 
      </DataTemplate> 
     </DataGridTemplateColumn.CellTemplate> 
    </DataGridTemplateColumn> 
</DataGrid> 
相关问题