相关疑难解决方法(0)

WPF,'对象引用未在Designer中设置为对象的实例'

当我尝试为我的XAML重新加载Designer时,我得到一个"对象引用没有设置为对象的实例"错误UserControl.Visual Studio突出显示以下行作为问题:

<local:TemplateDetail Grid.Row="2" Grid.Column="1" Grid.ColumnSpan="3"
    Width="600" TemplateData="{Binding ElementName=cbo_templates,
                               Path=SelectedItem.Data, Mode=OneWay}"/>
Run Code Online (Sandbox Code Playgroud)

TemplateDetail是另一个UserControl.当我查看时TemplateDetail,它的Designer视图加载得很好,所以我认为那里没有问题.ComboBox我的XAML中有一个命名cbo_templates包含我的Template类的实例,它有一个Data属性(因此SelectedItem.Data).但是,如果我.DataPath上面的XAML中删除,我仍然得到"对象引用"错误,所以我不认为问题是我正在尝试访问该Path属性null.这是我的ComboBoxXAML以防万一:

<ComboBox ItemsSource="{Binding Path=List}" Grid.Row="1" Grid.Column="3"
          VerticalAlignment="Center" x:Name="cbo_templates" Width="250"
          HorizontalAlignment="Left" DisplayMemberPath="Name"
          SelectedValuePath="Name" SelectedIndex="0"/>
Run Code Online (Sandbox Code Playgroud)

获取此错误是一个真正的问题,因为设计视图无法加载,因此如果UserControl不运行应用程序,我无法看到我的样子.知道什么可能是错的吗?它构建良好,我没有看到构建输出中的任何绑定问题.

编辑: 这是两个UserControls 的构造函数代码:

UserControl带有"对象引用"错误的构造函数:

InitializeComponent();
grd_templateList.DataContext = this; // refers to containing <Grid> in XAML
Run Code Online (Sandbox Code Playgroud)

UserControl我正在尝试嵌入的构造函数,其Design视图加载正常的构造函数:

InitializeComponent();
grd_templateDetail.DataContext = this; // refers …
Run Code Online (Sandbox Code Playgroud)

.net wpf xaml visual-studio-2010

30
推荐指数
4
解决办法
5万
查看次数

标签 统计

.net ×1

visual-studio-2010 ×1

wpf ×1

xaml ×1