从VSTO outlook插件打开WPF表单
我在Thisaddin.cs中有这个代码
public void Search(string input) { ServerList listofservers = new ServerList(); listofservers.Visibility; }
ServerList
是一个简单的WPF表单,其中包含listbox但是如何显示listofservers
?
我找不到listofserver.show();
首先,没有名为WPF Form的项目,只有WPF的用户控件。 因此,一旦在XAML中创建了WPF UserControl,您就会注意到这是代码
所以我通过XAML代码看了一下。 因此,您可以看到整个事情是USERCONTROL,您必须将其更改为WINDOW,然后您将能够看到.Show()
但请注意,您还必须更改xaml.cs中的代码
因为它默认是这样的
public partial class ServerList : UserControl
将其更改为
public partial class ServerList : Window
很明显的原因!! 🙂
您也可以在布局面板中托管它,例如:
- 在Windows窗体设计器中打开Form 1。
- 在“工具箱”中,将TableLayoutPanel控件拖到for上
- 在TableLayoutPanel控件的智能标记面板上,选择“删除最后一行”。
- 将TableLayoutPanel控件的大小调整为更大的宽度和高度。
- 在工具箱中,双击UserControl1以在TableLayoutPanel控件的第一个单元格中创建UserControl1的实例。
- UserControl1的实例托管在名为elementHost1的新ElementHost控件中。
- 在“工具箱”中,双击“UserControl1”以在TableLayoutPanel控件的第二个单元格中创建另一个实例。
- 在“文档大纲”窗口中,选择tableLayoutPanel1。 有关更多信息,请参阅文档大纲窗口。
- 在“属性”窗口中,将“填充”属性的值设置为10,10,10,10。
- 两个ElementHost控件都resize以适应新布局。