I couldn't find a way to change the default AnimationDuration of the combobox's popup. Personally, I find the default AnimationDuration set at 300ms way too high.
I'd like a way to change it either per-component, by setting animation properties on them when appropriate, or globally, by configuring it in Startup.cs or on TelerikRootComponent perhaps. I've no idea how this should work.
---
ADMIN EDIT
Here is a way to change the animation of the dropdown per component - through the PopupClass (note that the popup class may move to the topmost element of the popup in a future version, if this stops working, inspect the rendering to see where the custom class is and how to cascade through it):
<style>
.fast-animation.k-popup.k-reset {
transition-duration: 100ms !important;
}
.slow-animation.k-popup.k-reset {
transition-duration: 1000ms !important;
}
.no-animation.k-popup.k-reset {
transition: none !important;
}
</style>
<TelerikComboBox PopupClass="fast-animation"
Data="@myComboData"
TextField="MyTextField"
ValueField="MyValueField"
@bind-Value="selectedValue"
Placeholder="Fast animation"
ClearButton="true" Filterable="true">
</TelerikComboBox>
<TelerikDropDownList PopupClass="no-animation"
Data="@myComboData"
TextField="MyTextField"
ValueField="MyValueField"
@bind-Value="selectedValue"
DefaultText="No Animation">
</TelerikDropDownList>
<TelerikDatePicker PopupClass="slow-animation" @bind-Value="@SelectedDate"></TelerikDatePicker>
@code {
IEnumerable<MyDdlModel> myComboData = Enumerable.Range(1, 20).Select(x => new MyDdlModel { MyTextField = "item " + x, MyValueField = x });
DateTime SelectedDate { get; set; } = DateTime.Now;
int selectedValue { get; set; }
public class MyDdlModel
{
public int MyValueField { get; set; }
public string MyTextField { get; set; }
}
}