我在UWP XAML中有一个小数据输入表单(ContentDialog)。
<ContentDialog .....>
<StackPanel>
<TextBox PlaceholderText="Name" Text="{Binding ItemName}"/>
<TextBox PlaceholderText="Notes" Height="62" Margin="0" AcceptsReturn="True"/>
<ComboBox PlaceholderText="Item Type" ItemsSource="{Binding ItemTypeList}" .../>
</StackPanel>
在设计器中,占位符文本可以正确显示所有控件,但只要在运行时显示对话框,文本框的占位符文本就会为空,即使是没有焦点的文本框也是如此。占位符文本对于组合框(以及一些AutoSuggestBox控件)是正确的,但所有TextBox控件都显示为空 - 是否绑定。
我对UWP还不熟悉,还有其他可能会对此产生影响吗?
更多信息:
我发现这也发生在普通页面和用户控件上。只有TextBox似乎受到影响。
更多测试表明,如果直接显示页面,例如:在App.xaml.cs中更改rootFrame.Navigate以显示“HomePage”而不是“MainPage”,占位符显示。然而,我的“MainPage”有一个汉堡包菜单(我正在使用Devexpress汉堡菜单框架),似乎一旦加载,我的TextBoxes不再在运行时显示PlaceHolderText。我会继续测试,也许可以用DevExpress来提高它,因为它似乎是这个控件的一个问题。当我解决这个问题时,我会更新这篇文章。