gpt4 book ai didi

c# - WPF ComboBox IsSynchronised 默认值

转载 作者:行者123 更新时间:2023-11-30 18:09:32 29 4
gpt4 key购买 nike

我试图在选定的索引为-1时显示默认值(甚至没有值),或者选择initem为null。这通常工作得很好,但是当我启用 IsSynchronizedWithCurrentItem 并将其设置为 True 时,会显示我的 DataTable 中的第一个值。我怎样才能同时拥有 IsSynchronizedWithCurrentItem ="True"并在加载时显示无/默认值。

我的组合框 XAML:

<GroupBox Name="ClientGroup" Header="Client" Margin="63,182,0,177" FontSize="14" HorizontalAlignment="Left" Width="298">
<ComboBox Name="Supplier" Grid.IsSharedSizeScope="True" ItemsSource="{Binding}" IsEditable="True" Text="Please Choose..." TextSearch.TextPath="CompanyName" IsSynchronizedWithCurrentItem="True" Height="23" VerticalAlignment="Top" Margin="0,6,6,0" FontSize="11" StaysOpenOnEdit="True">
<ComboBox.ItemTemplate>
<DataTemplate>
<Grid Margin="0,5,0,5">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" SharedSizeGroup="CompanyName" />
<ColumnDefinition Width="Auto" SharedSizeGroup="EIC" />
</Grid.ColumnDefinitions>
<TextBlock Text="{Binding CompanyName}" Grid.Column="0" />
<TextBlock Text="{Binding EIC, StringFormat=' ({0})'}" Grid.Column="1" FontFamily="Courier New" FontWeight="Bold" FontSize="12" />
</Grid>
</DataTemplate>
</ComboBox.ItemTemplate>
</ComboBox>
</GroupBox>

我背后的CS代码:

ClientGroup.DataContext = (new CompanyDealsDataSetTableAdapters.CompanyTableAdapter()).GetData();

当我启动我的应用程序时,它会自动选择我的数据表中的第一行。当我删除 IsSynchronizedWithCurrentItem 时,它按预期工作。

谁有解决办法?

最佳答案

找到了答案,而且比我想象的简单多了。

    private void Window_Loaded(object sender, RoutedEventArgs e)
{
Supplier.Text = null;
}

这似乎有效,我所有的绑定(bind)字段都设置为 null/默认值 :)。

关于c# - WPF ComboBox IsSynchronised 默认值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2424329/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com