В настоящее время у меня есть поле со списком в моем приложении WPF, но кажется, что есть некоторое отставание до преобразования значения.
Преобразователь значений преобразует UUID / GUID в имя, но в выпадающем списке сначала отображается UUID / GUID в течение доли секунды, а затем отображается имя.
Вот версия моего комбинированного списка:
<ComboBox x:Name="MyComboBox"
Text="{Binding Path=GUID, Converter={StaticResource GUIDToNameValueConverter}, Mode=OneWay}"
ItemTemplate="{StaticResource MyTemplate}"
Style="{StaticResource MyStyle}"
ItemsSource="{Binding Source={x:Static myNameSpace:MyItems}, Path=Items}"
SelectionChanged="MyChangedEventHandler">
</ComboBox>
Вот общая суть моего преобразователя значений:
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
{
string GUID = (string)value;
MyObject myObject = GetObjectById(GUID);
return myObject.name;
}
По сути, я хочу избавиться от отображения доли секунды GUID до того, как появится фактическое имя. Я не уверен, почему событие GUID появляется, так как конвертер заботится о преобразовании этого в имя.
Дайте мне знать, достаточно ли информации для ответа на этот вопрос, если нет, пожалуйста, запросите больше частей моего кода!