Dear Telerik Team!
I'm trying to create some kind of configuration tool for ScheduleView control view settings. I'd like to initialize ScheduleView with some default values for orientation, visible days, minor and major tick length. In one of my xaml user controls code I have radcombobox definied:
ComboBox ItemsSource is definied like this:
I also use this converter:
I bind combobox SelectedItem property to the following field:
But it doesn't work. ComboBox item is not selected. Could you please help me and point me in to the right direction?
Thanks in advance
Very best regards!
Krzysztof Kaźmierczak
testst
I'm trying to create some kind of configuration tool for ScheduleView control view settings. I'd like to initialize ScheduleView with some default values for orientation, visible days, minor and major tick length. In one of my xaml user controls code I have radcombobox definied:
<
telerik:RadComboBox
ItemsSource
=
"{Binding MinorTickProviders}"
SelectedItem
=
"{Binding SchedulerViewSettings.MinorTickLength,Mode=TwoWay}"
>
<
telerik:RadComboBox.ItemTemplate
>
<
DataTemplate
>
<
TextBlock
Text
=
"{Binding ., Converter={StaticResource TickConverter}}"
/>
</
DataTemplate
>
</
telerik:RadComboBox.ItemTemplate
>
</
telerik:RadComboBox
>
ComboBox ItemsSource is definied like this:
private List<
ITickProvider
> minorTickProviders;
public List<
ITickProvider
> MinorTickProviders
{
get
{
return this.minorTickProviders;
}
}
this.minorTickProviders = new List<
ITickProvider
>();
this.minorTickProviders.Add(new FixedTickProvider(new DateTimeInterval(2, 0, 0, 0, 0)));
this.minorTickProviders.Add(new FixedTickProvider(new DateTimeInterval(5, 0, 0, 0, 0)));
this.minorTickProviders.Add(new FixedTickProvider(new DateTimeInterval(10, 0, 0, 0, 0)));
this.minorTickProviders.Add(new FixedTickProvider(new DateTimeInterval(15, 0, 0, 0, 0)));
this.minorTickProviders.Add(new FixedTickProvider(new DateTimeInterval(20, 0, 0, 0, 0)));
this.minorTickProviders.Add(new FixedTickProvider(new DateTimeInterval(30, 0, 0, 0, 0)));
this.minorTickProviders.Add(new FixedTickProvider(new DateTimeInterval(0, 1, 0, 0, 0)));
this.minorTickProviders.Add(new FixedTickProvider(new DateTimeInterval(0, 2, 0, 0, 0)));
this.minorTickProviders.Add(AutomaticTickLengthProvider.MinorProvider);
I also use this converter:
public class TickConverter : IValueConverter
{
public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
FixedTickProvider provider = value as FixedTickProvider;
if (provider != null)
{
string interval = string.Format("{0:d2}:{1:d2}:00", provider.Interval.Hours, provider.Interval.Minutes);
if (provider.Interval.Hours == 0 && provider.Interval.Minutes == 0)
{
if (provider.Interval.Days == 1)
{
interval = "1 day";
}
else
{
interval = string.Format("{0} days", provider.Interval.Days);
}
}
return interval;
}
return "Automatic conversion";
}
public object ConvertBack(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
throw new NotImplementedException();
}
}
I bind combobox SelectedItem property to the following field:
private ITickProvider mMinorTickLenght;
public ITickProvider MinorTickLength
{
get { return mMinorTickLenght; }
set
{
mMinorTickLenght = value;
}
}
MinorTickLength = new FixedTickProvider(new DateTimeInterval(20, 0, 0, 0, 0));
But it doesn't work. ComboBox item is not selected. Could you please help me and point me in to the right direction?
Thanks in advance
Very best regards!
Krzysztof Kaźmierczak
testst