2016-03-20 8 views
0

Ich habe eine WPF Ribbon-basierte Anwendung und eine DLL.WPF: programmgesteuert hinzufügen RibbonBar von UserControl in ein RibbonWindow RibbonTab

In der Anwendung verwende ich eine Drittanbieter-Quelle (Syncfusion), um meine RibbonWindow zu erstellen.

Die DLL ist eine WPF-Klassenbibliothek, die aus einem UserControl besteht, das eine RibbonBar ist.

Ich möchte dieses UserControl zu meinem RibbonWindow hinzufügen.

Ich bin mir nicht sicher, wie das programmatisch zu tun ist.

MainWindow.xaml.cs

geladen dynamisch das Benutzersteuerelement aus der DLL

 Assembly asm = Assembly.LoadFile(unitDllPath); 
     Type typ = asm.GetType("WX" + ".UserControl1", true, true); 
     unitDll = Activator.CreateInstance(typ); 

MainWindow.xaml

<syncfusion:RibbonTab Name="Tab1" IsChecked="True" > 

    </syncfusion:RibbonTab> 

UserControl.xaml

<syncfusion:RibbonBar Header="Select" Name="Bar1" ></syncfusion:RibbonBar> 

UserControl.xam l.cs

 public void MainWindow() 
    { 
     InitializeComponent(); 
    } 

Wie kann ich die RibbonBar von WX.UserControl (Bar1) erhalten in (Tab1)?

Danke.

Antwort

0

1) Wenn wir programmatisch Usercontrol hinzufügen müssen, die eine RibbonBar zu Ihrem RibbonWindow ist, sollte Ihr Usercontrol wie sein unter

UserControl.xaml

<syncfusion:RibbonBar x:Class="WPFClassLibrary.UserControl1" 
     xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
     xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
     xmlns:syncfusion="http://schemas.syncfusion.com/wpf" 
     xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
     xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
     mc:Ignorable="d" 
     d:DesignHeight="300" d:DesignWidth="300"> 
     <syncfusion:RibbonButton SizeForm="Large" Label="New Email"/> 
     <syncfusion:RibbonButton SizeForm="Large" Label="Inbox"/> 
     <syncfusion:RibbonButton SizeForm="Large" Label="Drafts"/> 
     <syncfusion:RibbonButton SizeForm="Large" Label="OutBox"/> 

2) Siehe die Montage Datei in Ihrer Anwendung.

3) verwenden, die Montage hinter in Code wie unten

using WPFClassLibrary; 

4) können wir jetzt, dass die Usercontrol aus dem Code hinter anrufen und auf die unsere RibbonWindow hinzuzufügen.

tab1.Items.Add(new UserControl1()); 

i auch haben befestigen einfache Probe für dieses

http://www.syncfusion.com/downloads/support/directtrac/general/ze/WPfRibbonSample-1343767783