我有一个看起来像这样的 xaml 文件。
<Window x:Class="Space4it.Energilab.DataApplicationWPF.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:sys="clr-namespace:System;assembly=mscorlib"
xmlns:local="clr-namespace:Space4it.Energilab.DataApplicationWPF"
Title="Space4it NetBitter database interface" Height="700" Width="1200"
x:Name="rootElement"
Icon="program.ico">
<Window.DataContext>
<local:MainWindowDataModel/></Window.DataContext>
MainWindowDataModel 位于主 WPF 项目中,它在“调试 - X86”中工作。但是当更改为“生产 - X64”时,我收到此错误:
错误 1 命名空间“clr-namespace:Space4it.Energilab.DataApplicationWPF”中不存在名称“MainWindowDataModel”。C:\Users\tarp\Dropbox\Space4it\Development\Energilab\Development\Space4it.Energilab.Solution\Space4it.Energilab.DataApplicationWPF\MainWindow.xaml 10 5 Space4it.Energilab.DataApplicationWPF
我做了“清理”,重新编译....
有趣的是 DataGrid 获取数据,但网格内的这个 ComboBox 没有!这只是在其他计算机上安装程序时出现的问题。即 Windows Server 2008。
<DataGridComboBoxColumn Header="Key" SelectedValueBinding="{Binding Path=t_keys_id, UpdateSourceTrigger=PropertyChanged}">
<DataGridComboBoxColumn.ElementStyle>
<Style TargetType="ComboBox">
<Setter Property="ItemsSource" Value="{Binding ElementName=rootElement, Path=DataContext.keyData}"/>
<Setter Property="IsEditable" Value="False"/>
<Setter Property="DisplayMemberPath" Value="nb_key" />
<Setter Property="SelectedValuePath" Value="id"/>
</Style>
</DataGridComboBoxColumn.ElementStyle>
<DataGridComboBoxColumn.EditingElementStyle>
<Style TargetType="ComboBox">
<Setter Property="ItemsSource" Value="{Binding ElementName=rootElement, Path=DataContext.keyData}"/>
<Setter Property="IsEditable" Value="True"/>
<Setter Property="DisplayMemberPath" Value="nb_key" />
<Setter Property="SelectedValuePath" Value="id"/>
</Style>
</DataGridComboBoxColumn.EditingElementStyle>
</DataGridComboBoxColumn>
有没有人有任何想法?