none
Expander中动态加载DATA的问题? RRS feed

  • 问题

  • 我要在Expander中加入一个listbox,作为下拉菜单,由于是动态加载菜单,请教在CS中怎么加载listbox到Expander中?
    2011年2月6日 18:17

答案

  • 在XMAL页面这样操作时可行的,在CS文件中不知道怎么写,我现在用的办法是通过expanded事件触发,事件触发时动态加载一个listbox,事件关闭的时候remove listbox,虽然能达到效果,但是感觉很别扭
    • 已标记为答案 Mog Liang 2011年2月11日 6:41
    2011年2月7日 12:10

全部回复

  • 你把ListBox放到Expander的HeaderTemaplte或ContentTemaplte里可以吗?


    Mog Liang
    Please mark the replies as answers if they help or unmark if not.
    If you have any feedback about my replies, please contact msdnmg@microsoft.com.
    Microsoft One Code Framework
    2011年2月7日 8:45
  • 在XMAL页面这样操作时可行的,在CS文件中不知道怎么写,我现在用的办法是通过expanded事件触发,事件触发时动态加载一个listbox,事件关闭的时候remove listbox,虽然能达到效果,但是感觉很别扭
    • 已标记为答案 Mog Liang 2011年2月11日 6:41
    2011年2月7日 12:10
  • CS里不能直接操作Template的。注册事件,动态添加ListBox到Expander里是个办法,你的方法只要管用就行。


    Mog Liang
    Please mark the replies as answers if they help or unmark if not.
    If you have any feedback about my replies, please contact msdnmg@microsoft.com.
    Microsoft One Code Framework
    2011年2月8日 2:08
  • 用expander将就好了,我也遇到这个问题,但没看到合适的例子抄。牛人们似乎对此不太感兴趣。

                AccordionItem item = new AccordionItem();

                StackPanel spFirst = new StackPanel();
                TextBlock tB = new TextBlock();
                tB.Text = "商机管理";
                spFirst.Children.Add(tB);
                item.Header = spFirst;

                StackPanel spSecond = new StackPanel();

                StackPanel sp1 = new StackPanel();
                sp1.Orientation = Orientation.Horizontal;
                sp1.Margin = new Thickness(3, 8, 3, 3);
                Image ima1 = new Image();//二级菜单图片
                ima1.Source = new BitmapImage(new Uri("/Images/littlesun.png", UriKind.RelativeOrAbsolute));
                ima1.Margin = new Thickness(3, 0, 3, 0);

                HyperlinkButton hb1 = new HyperlinkButton();
                hb1.Content = "商机线索";
                hb1.NavigateUri = new Uri("/PageSJXS", UriKind.Relative);
                hb1.TargetName = "ContentFrame";

                sp1.Children.Add(ima1);
                sp1.Children.Add(hb1);

                StackPanel sp2 = new StackPanel();
                sp2.Orientation = Orientation.Horizontal;
                sp2.Margin = new Thickness(3);
                Image ima2 = new Image();//二级菜单图片
                ima2.Source = new BitmapImage(new Uri("/Images/littlesun.png", UriKind.RelativeOrAbsolute));
                ima2.Margin = new Thickness(3, 0, 3, 0);
                //ima1.Width = 20;
                //ima1.Height = 20;
                HyperlinkButton hb2 = new HyperlinkButton();
                hb2.Content = "销售漏斗";
                hb2.NavigateUri = new Uri("/PageSJXS", UriKind.Relative);
                hb2.TargetName = "ContentFrame";
                sp2.Children.Add(ima2);
                sp2.Children.Add(hb2);

                spSecond.Children.Add(sp1);
                spSecond.Children.Add(sp2);

                item.Content = spSecond;

                accordionMenu.Items.Add(item);


    菜爷
    2011年2月16日 9:31