Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

使用 enumValueExtension 对 combobox 进行数据绑定时,ui显示异常 #432

Open
3 of 24 tasks
dodu2014 opened this issue Jun 9, 2024 · 2 comments
Open
3 of 24 tasks

Comments

@dodu2014
Copy link

dodu2014 commented Jun 9, 2024

Describe the bug

combobox的显示项异常,尝试设置 DisplayMemberPath = Key|Name|Label,都无效

Steps to reproduce

<ComboBox x:Name="themeMode"
          xmlns:ui="using:CommunityToolkit.WinUI"
          xmlns:enums="using:Microsoft.UI.Xaml"
          ItemsSource="{ui:EnumValues Type=enums:ElementTheme}"
          SelectedItem="{x:Bind ViewModel.ElementTheme, Mode=OneWay}"
          DisplayMemberPath="Name"
          >
</ComboBox>

Expected behavior

在ui层,能正常显示

Screenshots

image

Code Platform

  • UWP
  • WinAppSDK / WinUI 3
  • Web Assembly (WASM)
  • Android
  • iOS
  • MacOS
  • Linux / GTK

Windows Build Number

  • Windows 10 1809 (Build 17763)
  • Windows 10 1903 (Build 18362)
  • Windows 10 1909 (Build 18363)
  • Windows 10 2004 (Build 19041)
  • Windows 10 20H2 (Build 19042)
  • Windows 10 21H1 (Build 19043)
  • Windows 10 21H2 (Build 19044)
  • Windows 10 22H2 (Build 19045)
  • Windows 11 21H2 (Build 22000)
  • Other (specify)

Other Windows Build number

No response

App minimum and target SDK version

  • Windows 10, version 1809 (Build 17763)
  • Windows 10, version 1903 (Build 18362)
  • Windows 10, version 1909 (Build 18363)
  • Windows 10, version 2004 (Build 19041)
  • Windows 10, version 2104 (Build 20348)
  • Windows 11, version 22H2 (Build 22000)
  • Other (specify)

Other SDK version

No response

Visual Studio Version

2022

Visual Studio Build Number

No response

Device form factor

Desktop

Additional context

No response

Help us help you

Yes, I'd like to be assigned to work on this item.

@Poker-sang
Copy link
Contributor

这里应该不需要设置DisplayMemberPath

ViewModel.ElementTheme是什么类型的?应该和ItemsSource绑定的数组的元素类型一致

@4broadcast
Copy link

@dodu2014 I just ran into this same issue on Windows 11.

See this explanation: https://stackoverflow.com/a/39379568/390982

Simply put, the ElementTheme enumeration is not a .net type, and does not act like a .net enum. You (and I) will need to define a custom enum, or devise another way to mock the enumeration.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants