C# 掌握细节问题

C# 掌握细节问题,c#,wpf,entity-framework,C#,Wpf,Entity Framework,我只是在学习WPF/绑定和实体框架。目前我正在做以下工作: 有主-细节-细节。我有佣金计划,我有佣金计划项目,每个佣金计划项目都有合格的用户 在UI上-将计划对象设置为上下文,并绑定所有属性。主详图网格绑定到CommissionPlanItems。这很有效 我想解决的几个问题。或者我想我只是在找一般的指南 1。我的CommissionPLanItems具有LineNumber属性。我真的不需要它显示,但我需要它填充,我需要网格以正确的顺序显示项目。我放置了将行作为模板上移的按钮: <p

我只是在学习WPF/绑定和实体框架。目前我正在做以下工作:

  • 有主-细节-细节。我有佣金计划,我有佣金计划项目,每个佣金计划项目都有合格的用户
在UI上-将计划对象设置为上下文,并绑定所有属性。主详图网格绑定到CommissionPlanItems。这很有效

我想解决的几个问题。或者我想我只是在找一般的指南

1。我的CommissionPLanItems具有LineNumber属性。我真的不需要它显示,但我需要它填充,我需要网格以正确的顺序显示项目。我放置了将行作为模板上移的按钮:

<pre>
<code>
    <DataGridTemplateColumn>
        <DataGridTemplateColumn.CellTemplate>
            <DataTemplate>
                <Button Click="Button_Click">Move Up</Button>
            </DataTemplate>
        </DataGridTemplateColumn.CellTemplate>
    </DataGridTemplateColumn>
</code>
</pre>


上移
我可以处理这个按钮点击,并得到相应的对象,但我有几个问题 A.按钮显示在新网格行占位符中。我如何防止它显示在那里? B有没有办法自动“重新排列行”

2。每个佣金计划项目都可以关联多个客户。如何使此UI明智?我在考虑网格中的某种按钮,它将显示可选择项目的弹出模式表单

3。网格有下拉列。当它们进入“编辑”时“模式-他们使排得更高。我真的不喜欢那种效果。我如何解决这个问题

对于#1:是的,可以在WPF中对gridview进行排序,但不能自动排序。为此,您可能需要使用Telerik、Dundas、Infragistics等公司提供的现成控件。MSDN提供了一个很好的教程,介绍如何通过代码将其连接起来

对于#2:这取决于如何定义类型。您可以通过单元格上的工具提示执行此操作,并应用自定义数据模板,其中包含显示每个人或其信息的listbox控件。这也可以在一个单独的用户控件中处理,该控件可以在选中行时显示。你有很多选择。只要你能得到数据,你就是黄金。只需定义需要显示的内容,并预测要显示的最大记录数。显然,如果每一行显示10条记录,一个小的工具提示可能不是最好的方法,但是一个更大的浮动用户控件可能是

对于#3:如果使用datatemplate定义此对象,则可以设置MaxHeight或MaxWidth来控制控件的最大高度。这也可能受到元素填充的影响,因此您可能需要设置padding=“0”(零)