【问题标题】:Master-detail questions主从问题
【发布时间】:2011-02-21 15:45:17
【问题描述】:

我只是在学习 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>

我可以处理该按钮单击并获取相应的对象,但我有几个问题 一种。按钮显示在新的网格行占位符中。如何防止它在那里显示? 湾。有没有办法自动“重新排序行?

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

3。网格有下拉列。当他们进入“编辑”模式时 - 他们使行更高。我不是很喜欢这种效果。我该如何解决它?

【问题讨论】:

    标签: c# wpf entity-framework


    【解决方案1】:

    对于#1:是的,可以在 WPF 中对 gridview 进行排序,但不能自动排序。为此,您可能需要使用 Telerik、Dundas、Infragistics 等的现成控件。MSDN 提供了一个很好的教程,介绍如何通过代码自行连接。 http://msdn.microsoft.com/en-us/library/ms745786.aspx

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

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

    【讨论】:

      猜你喜欢
      • 2021-01-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-12-25
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多