防止在MahApp datepicker中添加文本?

时间:2018-01-29 16:53:20

标签: wpf xaml mahapps.metro

我试图阻止在 var response = this.moviesService.GetGenres(); console.log(response); // this gets called before it finishes! datepicker中添加文字,到目前为止我尝试的是:

MahApp

本质上是从已经问过的问题中获取的代码,但是在这种情况下上面的代码不起作用,我可以在我的<DatePicker x:Name="MyDatePicker"> <DatePicker.Resources> <Style TargetType="DatePickerTextBox"> <Setter Property="IsReadOnly" Value="True"/> </Style> </DatePicker.Resources> </DatePicker> 中插入所有字符类型。

我也试过DatePicker,但这会导致弹出窗口出现问题,所以我放弃了这个解决方案。还有其他想法吗?

感谢。

1 个答案:

答案 0 :(得分:2)

  

我也在使用MDIX(xaml中的材质设计),但包含了MahApp的资源

根据Material Design styles,他们使用不同的样式键作为日期选择器的文本框(请参阅链接后面的第13行和第177行)。只需将x:Key="MaterialDesignDatePickerTextBox"添加到您的Style声明中,就可以了:

<DatePicker x:Name="MyDatePicker">
  <DatePicker.Resources>
    <Style x:Key="MaterialDesignDatePickerTextBox"
           TargetType="DatePickerTextBox"
           BasedOn="{StaticResource MaterialDesignDatePickerTextBox}">
      <Setter Property="IsReadOnly" Value="True"/>
    </Style>
  </DatePicker.Resources>
</DatePicker>

作为一项规则,如果您从某个地方提取样式资源,并且某些内容无法按预期工作,那么您应该首先查看Xaml以获取这些样式。他们有可能以某种方式偏离正常惯例。