代码之家  ›  专栏  ›  技术社区  ›  ErocM

WPF绑定动态添加的控件

  •  0
  • ErocM  · 技术社区  · 14 年前

    我将在我的RibbonWindow中向“Company”RibbonApplication菜单项添加a,代码如下:

      var reset = DataContext as ICompanies;
      if (reset != null)
      {
    
        // ToDo: Create interface to populate the mymenutems
        var mymenuitems = new List<string>();
        foreach (var item in mymenuitems)
        {
          var newbutton = new Button { Margin = new Thickness(2), Content = item };
          MenuItem_Company.Items.Add(newbutton);
        }
      }
    

    我的XAML如下:

    <ribbon:RibbonApplicationMenu ToolTipTitle="Application Menu">
        <ribbon:RibbonApplicationMenuItem 
            Header="Company"
            x:Name="MenuItem_Company"
            ImageSource="Images\LargeIcon.png">                     
        </ribbon:RibbonApplicationMenuItem>
    </ribbon:RibbonApplicationMenu>
    

    当我将新按钮添加到menuitem_公司时,如何在代码中绑定它?我需要它绑定到DataContext中的属性。

    谢谢, 厄洛克

    1 回复  |  直到 14 年前
        1
  •  2
  •   Aaron McIver    14 年前
    var newbutton = new Button { Margin = new Thickness(2), Content = item };
    Binding b = new Binding();
    b.Source = reset;
    b.Path = new PropertyPath("SomePropertyOnDataContext");
    newButton.SetBinding(Button.IsEnabledProperty, b);
    

    代码中的各种假设……但它应该能让您知道从哪里开始……