带有objectdataprovider的WPF时间下拉框
我正试图用3个组合框实现一个用户控件来选择时间——一个用于小时,第二个用于分钟,第三个用于秒 小时组合框中有0到23的数字可供选择 分钟和秒组合框有0到59个数字可供选择 我相信我只需要使用XAML就可以做到这一点,而不需要在代码背后动态填充组合框带有objectdataprovider的WPF时间下拉框,wpf,xaml,time,combobox,objectdataprovider,Wpf,Xaml,Time,Combobox,Objectdataprovider,我正试图用3个组合框实现一个用户控件来选择时间——一个用于小时,第二个用于分钟,第三个用于秒 小时组合框中有0到23的数字可供选择 分钟和秒组合框有0到59个数字可供选择 我相信我只需要使用XAML就可以做到这一点,而不需要在代码背后动态填充组合框 <ComboBox x:Name="HoursComboBox"> <ComboBoxItem>0</ComboBoxItem> <ComboBoxItem>1</ComboBox
<ComboBox x:Name="HoursComboBox">
<ComboBoxItem>0</ComboBoxItem>
<ComboBoxItem>1</ComboBoxItem>
...
<ComboBoxItem>23</ComboBoxItem>
</ComboBox>
我可以在XAML中实现这个调用吗?事实证明我可以
<UserControl x:Class="MyControls.TimeSpanSelector"
xmlns:linq="clr-namespace:System.Linq;assembly=System.Core"
...>
<UserControl.Resources>
<ObjectDataProvider x:Key="Hours"
ObjectType="{x:Type linq:Enumerable}"
MethodName="Range">
<ObjectDataProvider.MethodParameters>
<sys:Int32>0</sys:Int32>
<sys:Int32>23</sys:Int32>
</ObjectDataProvider.MethodParameters>
</ObjectDataProvider>
</UserControl.Resources>
...
<Border>
<ComboBox ItemsSource="{Binding Source={StaticResource Hours}}" />
</Border>
...
</UserControl>
0
23
...
...
事实证明我可以
<UserControl x:Class="MyControls.TimeSpanSelector"
xmlns:linq="clr-namespace:System.Linq;assembly=System.Core"
...>
<UserControl.Resources>
<ObjectDataProvider x:Key="Hours"
ObjectType="{x:Type linq:Enumerable}"
MethodName="Range">
<ObjectDataProvider.MethodParameters>
<sys:Int32>0</sys:Int32>
<sys:Int32>23</sys:Int32>
</ObjectDataProvider.MethodParameters>
</ObjectDataProvider>
</UserControl.Resources>
...
<Border>
<ComboBox ItemsSource="{Binding Source={StaticResource Hours}}" />
</Border>
...
</UserControl>
0
23
...
...
事实证明我可以
<UserControl x:Class="MyControls.TimeSpanSelector"
xmlns:linq="clr-namespace:System.Linq;assembly=System.Core"
...>
<UserControl.Resources>
<ObjectDataProvider x:Key="Hours"
ObjectType="{x:Type linq:Enumerable}"
MethodName="Range">
<ObjectDataProvider.MethodParameters>
<sys:Int32>0</sys:Int32>
<sys:Int32>23</sys:Int32>
</ObjectDataProvider.MethodParameters>
</ObjectDataProvider>
</UserControl.Resources>
...
<Border>
<ComboBox ItemsSource="{Binding Source={StaticResource Hours}}" />
</Border>
...
</UserControl>
0
23
...
...
事实证明我可以
<UserControl x:Class="MyControls.TimeSpanSelector"
xmlns:linq="clr-namespace:System.Linq;assembly=System.Core"
...>
<UserControl.Resources>
<ObjectDataProvider x:Key="Hours"
ObjectType="{x:Type linq:Enumerable}"
MethodName="Range">
<ObjectDataProvider.MethodParameters>
<sys:Int32>0</sys:Int32>
<sys:Int32>23</sys:Int32>
</ObjectDataProvider.MethodParameters>
</ObjectDataProvider>
</UserControl.Resources>
...
<Border>
<ComboBox ItemsSource="{Binding Source={StaticResource Hours}}" />
</Border>
...
</UserControl>
0
23
...
...