Hello,
maybe this is an easy one for anybody (but not for me). I could find a lot of examples using the radDropDownButton but all of them do fill the drop down list through the .XAML file, not dynamically.
I tried several things like
maybe this is an easy one for anybody (but not for me). I could find a lot of examples using the radDropDownButton but all of them do fill the drop down list through the .XAML file, not dynamically.
I tried several things like
List
<System.Windows.Controls.ListBoxItem> theItems=new List<System.Windows.Controls.ListBoxItem>();
...
// Fill List with several items...
...
[radDropDownButton].DropDownContent=theItems;
but nothing worked correctly.
Does anybody know how to fill it so that when it drops down, it displays the contents?
Is there any documentation about how to use the Telerik Controls? It seems like there are only examples and class documentation, but no real manual like "How to use the ... control".
Thank you,
Bernd.
6 Answers, 1 is accepted
0
Hi Bernd,
You need to set theDropDownButton DropDown content to a visual element. In your case you need to create a ListBox and fill it with ListBoxItems and then set the ListBox as DropDownContent:
Based on your feedback we will definitely update our online documentation to better illustrate such scenarios. More information about how to use our Silverlight controls you can find in the Step-by-Step tutorial here.
I hope that info will help you. Let us know if we can further assist you.
Regards,
Tina Stancheva
the Telerik team
You need to set theDropDownButton DropDown content to a visual element. In your case you need to create a ListBox and fill it with ListBoxItems and then set the ListBox as DropDownContent:
//create a RadDRopDownButton
RadDropDownButton dropDownButton =
new
RadDropDownButton();
dropDownButton.Content =
"MyDropDownButton"
;
//create a ListBox
ListBox listBox =
new
ListBox();
for
(
int
i = 0; i < 5; i++)
{
listBox.Items.Add(
new
ListBoxItem() { Content =
"Item "
+ i });
}
//set the ListBox as the RadDropDownButton's DropDownContent
dropDownButton.DropDownContent = listBox;
Based on your feedback we will definitely update our online documentation to better illustrate such scenarios. More information about how to use our Silverlight controls you can find in the Step-by-Step tutorial here.
I hope that info will help you. Let us know if we can further assist you.
Regards,
Tina Stancheva
the Telerik team
Do you want to have your say when we set our development plans?
Do you want to know when a feature you care about is added or when a bug fixed?
Explore the
Telerik Public Issue Tracking
system and vote to affect the priority of the items
0
Allen
Top achievements
Rank 2
Iron
Veteran
answered on 17 Jun 2011, 03:22 PM
Fine, but how to bind the SelectedItem to a viewmodel property? The following shows an empty button and does not bind the vale back to the viewmodel property InputUOM which is any of the literals M, MP, E, EP
<
telerik:RadDropDownButton
x:Name
=
"UOMInputButton"
AutoOpenDelay
=
"0:0:0.5"
Content
=
"{Binding SelectedItem.Content, ElementName=UIOptionsList}"
FontWeight
=
"Bold"
ToolTip
=
"Set INPUT units of measure ( - UI M|MP|E|EP )"
Margin
=
"0"
HorizontalContentAlignment
=
"Center"
Width
=
"36"
HorizontalAlignment
=
"Left"
>
<
telerik:RadDropDownButton.ContentTemplate
>
<
DataTemplate
>
<
TextBlock
Text
=
"{Binding InputUOM}"
/>
</
DataTemplate
>
</
telerik:RadDropDownButton.ContentTemplate
>
<
telerik:RadDropDownButton.DropDownContent
>
<
ListBox
x:Name
=
"UIOptionsList"
>
<
ListBoxItem
Content
=
"M"
ToolTip
=
"Input data is in METRIC QUANTITIES"
IsSelected
=
"True"
/>
<
ListBoxItem
Content
=
"MP"
ToolTip
=
"Input data is in METRIC PERCENTAGES"
/>
<
ListBoxItem
Content
=
"E"
ToolTip
=
"Input data is in ENGLISH QUANTITIES"
/>
<
ListBoxItem
Content
=
"EP"
ToolTip
=
"Input data is in ENGLISH PERCENTAGES"
/>
</
ListBox
>
</
telerik:RadDropDownButton.DropDownContent
>
</
telerik:RadDropDownButton
>
0
Hi Allen,
Currently you're binding the Content of the RadDropDownButton to the SelectedItems Content of the ListBox, but your ListBox is not bound and its SelectedItem is of type ListBoxItem and the content is of type string, so you're binding the Content of the RadDropDownButton to string. The problem comes from the DropDownContentTemplate - in it you try to show InputUOM property, but your object is string and it doesn't have such property. The are two things you can do - remove the template like this:
or use business objects in your ListBox.
For further references could you please examine the attached project and if you have more questions feel free to ask.
Greetings,
Zarko
the Telerik team
Currently you're binding the Content of the RadDropDownButton to the SelectedItems Content of the ListBox, but your ListBox is not bound and its SelectedItem is of type ListBoxItem and the content is of type string, so you're binding the Content of the RadDropDownButton to string. The problem comes from the DropDownContentTemplate - in it you try to show InputUOM property, but your object is string and it doesn't have such property. The are two things you can do - remove the template like this:
<
telerik:RadDropDownButton
x:Name
=
"UOMInputButton"
Width
=
"36"
Margin
=
"0"
HorizontalAlignment
=
"Left"
AutoOpenDelay
=
"0:0:0.5"
Content="{Binding SelectedItem.Content,
ElementName
=
UIOptionsList
}"
FontWeight
=
"Bold"
HorizontalContentAlignment
=
"Center"
>
<
telerik:RadDropDownButton.DropDownContent
>
<
ListBox
x:Name
=
"UIOptionsList"
>
<
ListBoxItem
Content
=
"M"
IsSelected
=
"True"
/>
<
ListBoxItem
Content
=
"MP"
/>
<
ListBoxItem
Content
=
"E"
/>
<
ListBoxItem
Content
=
"EP"
/>
</
ListBox
>
</
telerik:RadDropDownButton.DropDownContent
>
</
telerik:RadDropDownButton
>
For further references could you please examine the attached project and if you have more questions feel free to ask.
Greetings,
Zarko
the Telerik team
Do you want to have your say when we set our development plans?
Do you want to know when a feature you care about is added or when a bug fixed?
Explore the
Telerik Public Issue Tracking
system and vote to affect the priority of the items
0
Muthuraj
Top achievements
Rank 2
answered on 30 Sep 2017, 11:38 PM
Tina,
What is the alternate DisplayMemberPath & ValueMemberPath for RadDropDownButton control?
Thanks!
Muthu
0
Muthuraj,
As the RadDropDownButton doesn't expose such properties, what I can suggest you is in the DropDownContent of the RadDropDownButton specify a RadListBox. You can bind the ItemsSource property of the list box to a collection from your view model and set the DisplayMemberPath property of the control.
I have created sample project which demonstrates this approach and attached it to this reply.
Regards,
Dinko
Progress Telerik
As the RadDropDownButton doesn't expose such properties, what I can suggest you is in the DropDownContent of the RadDropDownButton specify a RadListBox. You can bind the ItemsSource property of the list box to a collection from your view model and set the DisplayMemberPath property of the control.
I have created sample project which demonstrates this approach and attached it to this reply.
Regards,
Dinko
Progress Telerik
Try our brand new, jQuery-free Angular 2 components built from ground-up which deliver the business app essential building blocks - a grid component, data visualization (charts) and form elements.
0
Muthuraj
Top achievements
Rank 2
answered on 06 Dec 2017, 04:14 PM
Thanks Dinko for your assistance. Also please help me on my another post as well.
Thanks in advance!