【问题标题】:WPF Toolkit Accordion Control Expand/CollapseWPF 工具包手风琴控件展开/折叠
【发布时间】:2012-02-27 15:21:06
【问题描述】:

我想使用 WPF 工具包附带的 Accordion Control。

有两件事我无法存档:

  1. 我需要一个在 Accordion 项目展开/折叠时触发的事件处理程序
  2. 我需要在 Code behind 中设置 Accordion 项的展开状态。

这有可能吗?

【问题讨论】:

    标签: wpf wpftoolkit


    【解决方案1】:

    常规的 System.Windows.Controls Expander(不是工具包)具有这些功能。

    System.Windows.Controls.Expander:

    • 有一个扩展事件。
    • 有一个折叠事件。
    • 还有一个 IsExpanded 属性。

    如果您不知道如何使用事件、属性、绑定或背后的代码,那么这些就是您需要学习的东西。

    【讨论】:

    • 链接指的是扩展器,而不是 WPF 工具包中的手风琴。
    • @Phil 是的,如果 Expander 具有他正在寻找的功能,也许他会更好。为了记录,我没有对你投反对票。
    • 好的,以某种方式编辑帖子以提及扩展器,我将删除反对票。
    • 它指的是扩展器而不是 AccordionItem
    • @tortexy 是的,那是我的意图。 “常规 System.Windows.Controls Expander”确实被标记为答案。
    【解决方案2】:

    查看 Accordion 的 SelectedItem(s) 属性应该可以满足您的所有需求。 对于 2),只需设置 SelectedItem,分别在 SelectedItems 中添加/删除。 对于 1),监听 SelectedItemsChanged 事件(分别为 SelectedItemChanged)。

    void MyAccordion_SelectedItemsChanged(object sender, System.Collections.Specialized.NotifyCollectionChangedEventArgs e)
    {
        if (e.NewItems != null)
        {
            foreach (var item in e.NewItems)
            {
                // item expanded
            }
        }
        if (e.OldItems != null)
        {
            foreach (var item in e.OldItems)
            {
                // item collapsed
            }
        }
    }
    

    【讨论】:

      猜你喜欢
      • 2012-09-23
      • 2021-11-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-01-25
      • 2016-10-29
      • 2019-08-26
      • 2015-11-29
      相关资源
      最近更新 更多