I would like my PanelBarItem to not change the background color while I move my move over it.
This is what is happening and not desired
This is what is desired
Is there an easy and simple way to accomplish this?
Note: I am okay with the Header area changing color while the mouse is over that area. (area containing text A,B,C.).
I would like to avoid extracting and changing the entire template just for this one small change.
Thanks in advance.
There are often cases that raisePropertyChanged() Method is called outside UI main thread.
Is it okay to call it in this way, or should I use Dispathcer.Invoke()?

I have a RadGridView in my application and did not explicitly set the style for it. It works well in normal contrast mode but when turn on the Aquatic high contrast mode in Windows 11, the contrast between the text and background on the header becomes minimal like below.
I tried changing the style like below but the text will stay at the defined color regardless of the contrast mode.
<Style TargetType="telerik:GridViewHeaderCell" BasedOn="{StaticResource GridViewHeaderCellStyle}"> <Setter Property="Foreground" Value="Red"/> <Setter Property="HorizontalContentAlignment" Value="Center"/> </Style>
Hi Team,
I have two questions, I am using RadNumericUpDownButton for getting time input. So I have used two separate numeric button to get hours and minutes.
Is it possible to let the drop down content open with bottom right aligned placement? Currently, when setting the drop down placement to "Bottom", it opens left aligned relative to the the split button.
Please see attachment for how it should look
I have a GridViewDataColumn that binds to a complex model (Custom class with a few properties and a ToString method)
The GridViewDataColumn also has a CustomGridFilter which is able to filter the column and has it's own popup.
But .. now the users also want to Order by this column - but nothing happens when clicking on the Column Header.
What am i missing ?
<telerik:GridViewDataColumn Width="100"
DataMemberBinding="{Binding YearRange}"
Header="Ã…rgang">
<telerik:GridViewDataColumn.FilteringControl>
<local:CustomGridFilter Aargang="{Binding ElementName=root, Path=VintageYear, Mode=TwoWay}" />
</telerik:GridViewDataColumn.FilteringControl>
</telerik:GridViewDataColumn>public class YearRange : IEquatable<int>
{
public int FromYear { get; set; }
public int ToYear { get; set; }
public int Year { get; set; }
public override string ToString()
{
if (FromYear == ToYear)
return FromYear.ToString();
return FromYear + "-" + ToYear;
}
#region Equals, GetHashCode
#region Comparison operators override
}public partial class CustomGridFilter : UserControl, IFilteringControl, INotifyPropertyChanged
{
private GridViewBoundColumnBase column;
private CompositeFilterDescriptor compositeFilter;
private FilterDescriptor rangeFilter;
#region INotifyPropertyChanged
public void OnPropertyChanged(string name) => PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(name));
public event PropertyChangedEventHandler PropertyChanged;
#endregion
#region IsActive DependencyProperty
public bool IsActive
{
get { return (bool)GetValue(IsActiveProperty); }
set { SetValue(IsActiveProperty, value); }
}
public static readonly DependencyProperty IsActiveProperty =
DependencyProperty.Register(
"IsActive",
typeof(bool),
typeof(CustomGridFilter),
new PropertyMetadata(false));
#endregion
#region Aargang DependencyProperty
public int? Aargang
{
get { return (int?)GetValue(AargangProperty); }
set { SetValue(AargangProperty, value); }
}
public static readonly DependencyProperty AargangProperty =
DependencyProperty.Register(
"Aargang",
typeof(int?),
typeof(CustomGridFilter),
new PropertyMetadata(
null,
(sender, evt) => { ((CustomGridFilter)sender).OnPropertyChanged("Aargang"); }
)
);
#endregion
public CustomGridFilter()
{
InitializeComponent();
DataContext = this;
PropertyChanged += CustomGridFilter_PropertyChanged;
}
private void CustomGridFilter_PropertyChanged(object sender, PropertyChangedEventArgs e)
{
if (e.PropertyName == "Aargang" && Aargang>1900 && Aargang<2100)
{
OnFilter(null, null);
}
}
public void Prepare(Telerik.Windows.Controls.GridViewColumn column)
{
this.column = column as GridViewBoundColumnBase;
if (this.column == null)
{
return;
}
if (compositeFilter == null)
{
CreateFilters();
}
}
private void CreateFilters()
{
string dataMember = column.DataMemberBinding.Path.Path;
compositeFilter = new CompositeFilterDescriptor();
rangeFilter = new FilterDescriptor(dataMember, FilterOperator.IsEqualTo, null);
compositeFilter.FilterDescriptors.Add(rangeFilter);
}
private void OnFilter(object sender, RoutedEventArgs e)
{
rangeFilter.Value = new YearRange { Year = Aargang ?? 0 };
if (!column.DataControl.FilterDescriptors.Contains(compositeFilter))
{
column.DataControl.FilterDescriptors.Add(compositeFilter);
}
IsActive = true;
var popup = this.ParentOfType<System.Windows.Controls.Primitives.Popup>();
if (popup != null)
{
popup.IsOpen = false;
}
}
private void OnClear(object sender, RoutedEventArgs e)
{
if (column.DataControl.FilterDescriptors.Contains(compositeFilter))
{
column.DataControl.FilterDescriptors.Remove(compositeFilter);
}
Aargang = 0;
IsActive = false;
var popup = this.ParentOfType<System.Windows.Controls.Primitives.Popup>();
if (popup != null)
{
popup.IsOpen = false;
}
}
}
I have a property called FolderName which is bound in storage view.xaml. I set this value with folder dialog. However if I call that value from within storage view or another view.cs its always defaulted. How do I persist the values across the running app. In code base I had to hardcover value.
https://github.com/CrownParkComputing/MegaDownloaderFinal
