WPF解决方案有点奇怪
这在我基于WPF的解决方案中的几个旧项目或新项目中发生。我刚刚添加了一个名为WPF解决方案有点奇怪,wpf,vb.net,Wpf,Vb.net,这在我基于WPF的解决方案中的几个旧项目或新项目中发生。我刚刚添加了一个名为Dashboard的窗口,并在生成的“Dashboard.xaml.vb文件中输入了以下代码。注意:当您创建Sub-New`时,它通常会为您粘贴InitializeComponent,但现在它不会。因此,我: Public Class DashBoard Public Sub New() InitializeComponent() End Sub End Class Ans编译器抱怨
Dashboard
的窗口,并在生成的“Dashboard.xaml.vb文件中输入了以下代码。注意:当您创建
Sub-New`时,它通常会为您粘贴InitializeComponent,但现在它不会。因此,我:
Public Class DashBoard
Public Sub New()
InitializeComponent()
End Sub
End Class
Ans编译器抱怨:
错误15未声明“InitializeComponent”。可能无法进入
由于其保护级别
这就好像IDE不知道这是窗口背后的代码一样。缺少某种部分类或链接,但在vbproj文件中,我们仍然可以找到该链接:
<Compile Include="Bridge.xaml.vb">
<DependentUpon>Bridge.xaml</DependentUpon>
</Compile>
要将您的Dashboard.xaml.vb
文件与现有的Dashboard.xaml
文件关联起来,您需要:
声明类部分
,以及
使其从WPF窗口继承,例如:
公共部分类仪表板继承窗口
只要您的类不是从窗口继承的
,很明显它找不到InitializeComponent
方法
但是,这并不能解释为什么不自动生成必要的代码部分。Dashboard.xaml
文件是什么样子的?那不行,我已经试过了。VS应该在VB.NET项目的黑盒魔法中完成所有这些。如果我不能使用C#,考虑告诉客户端填充它。检查.xaml
和.xaml.vb
文件是否相互连接,方法是在一些文本编辑器中关闭VS并打开.vbproj
文件,然后搜索Dashboard.xaml.vb
:它应该包含一个类似于Dashboard.xaml
,的条目,因为这告诉VS这两个文件“属于一起”,所以它们是这样连接的。@ProfK您在问题中没有显示这一点。问题显示Bridge.xaml而不是Dashboard.xaml。
<Window x:Class="DashBoard"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="DashBoard" Height="300" Width="300">
<Grid>
</Grid>
</Window>
Public Class DashBoard
End Class