Telerik Forums
UI for WPF Forum
1 answer
686 views
Hi I am having problem with template binding to visualstate. I need to change background color on action MouseOver (specifically Foreground color on Text) is there any way how to do it?
here is my xaml template:
                    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
                    xmlns:telerik="clr-namespace:Telerik.Windows.Controls;assembly=Telerik.Windows.Controls"
                    xmlns:local="clr-namespace:CustomControl">
 
 
    <Style TargetType="{x:Type local:RadCustomBtn}">
        <Setter Property="BorderThickness" Value="0"/>
        <Setter Property="BorderBrush" Value="#FF848484"/>
        <Setter Property="Background">
            <Setter.Value>
                <SolidColorBrush Color="#408AD2"/>
            </Setter.Value>
        </Setter>
        <Setter Property="Foreground" Value="Black"/>
        <Setter Property="HorizontalContentAlignment" Value="Center"/>
        <Setter Property="VerticalContentAlignment" Value="Center"/>
        <Setter Property="Padding" Value="3"/>
        <Setter Property="CornerRadius" Value="0"/>
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="{x:Type local:RadCustomBtn}">
                    <Grid SnapsToDevicePixels="True">
                        <VisualStateManager.VisualStateGroups>
                            <VisualStateGroup x:Name="CommonStates">
                                <VisualState x:Name="Normal"/>
                                <VisualState x:Name="MouseOver">
                                    <Storyboard>
                                        <ObjectAnimationUsingKeyFrames Duration="0" Storyboard.TargetProperty="BorderBrush" Storyboard.TargetName="OuterBorder">
                                            <DiscreteObjectKeyFrame KeyTime="0">
                                                <DiscreteObjectKeyFrame.Value>
                                                    <SolidColorBrush Color="#408AD2"/>
                                                </DiscreteObjectKeyFrame.Value>
                                            </DiscreteObjectKeyFrame>
                                        </ObjectAnimationUsingKeyFrames>
                                        <ObjectAnimationUsingKeyFrames Duration="0" Storyboard.TargetProperty="Background" Storyboard.TargetName="InnerBorder">
                                            <DiscreteObjectKeyFrame KeyTime="0">
                                                <DiscreteObjectKeyFrame.Value>
                                                    <SolidColorBrush Color="#679ED2"/>
                                                </DiscreteObjectKeyFrame.Value>
                                            </DiscreteObjectKeyFrame>
                                        </ObjectAnimationUsingKeyFrames>
                                        <ObjectAnimationUsingKeyFrames Duration="0" Storyboard.TargetProperty="BorderBrush" Storyboard.TargetName="InnerBorder">
                                            <DiscreteObjectKeyFrame KeyTime="0">
                                                <DiscreteObjectKeyFrame.Value>
                                                    <SolidColorBrush Color="White"/>
                                                </DiscreteObjectKeyFrame.Value>
                                            </DiscreteObjectKeyFrame>
                                        </ObjectAnimationUsingKeyFrames>
                                    </Storyboard>
                                </VisualState>
                                <VisualState x:Name="Pressed">
                                    <Storyboard>
                                        <DoubleAnimation Duration="0" To="0" Storyboard.TargetProperty="Opacity" Storyboard.TargetName="CommonStatesWrapper"/>
                                        <ObjectAnimationUsingKeyFrames Duration="0" Storyboard.TargetProperty="BorderBrush" Storyboard.TargetName="OuterBorder">
                                            <DiscreteObjectKeyFrame KeyTime="0">
                                                <DiscreteObjectKeyFrame.Value>
                                                    <SolidColorBrush Color="#408AD2"/>
                                                </DiscreteObjectKeyFrame.Value>
                                            </DiscreteObjectKeyFrame>
                                        </ObjectAnimationUsingKeyFrames>
                                        <ObjectAnimationUsingKeyFrames Duration="0" Storyboard.TargetProperty="Background" Storyboard.TargetName="InnerBorder">
                                            <DiscreteObjectKeyFrame KeyTime="0">
                                                <DiscreteObjectKeyFrame.Value>
                                                    <SolidColorBrush Color="#679ED2"/>
                                                </DiscreteObjectKeyFrame.Value>
                                            </DiscreteObjectKeyFrame>
                                        </ObjectAnimationUsingKeyFrames>
                                        <ObjectAnimationUsingKeyFrames Duration="0" Storyboard.TargetProperty="BorderBrush" Storyboard.TargetName="InnerBorder">
                                            <DiscreteObjectKeyFrame KeyTime="0">
                                                <DiscreteObjectKeyFrame.Value>
                                                    <SolidColorBrush Color="#408AD2"/>
                                                </DiscreteObjectKeyFrame.Value>
                                            </DiscreteObjectKeyFrame>
                                        </ObjectAnimationUsingKeyFrames>
                                    </Storyboard>
                                </VisualState>
                                <VisualState x:Name="Disabled">
                                    <Storyboard>
                                        <ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Visibility" Storyboard.TargetName="disabledBorder">
                                            <DiscreteObjectKeyFrame KeyTime="0">
                                                <DiscreteObjectKeyFrame.Value>
                                                    <Visibility>Visible</Visibility>
                                                </DiscreteObjectKeyFrame.Value>
                                            </DiscreteObjectKeyFrame>
                                        </ObjectAnimationUsingKeyFrames>
                                        <DoubleAnimation Duration="0" To="0.5" Storyboard.TargetProperty="Opacity" Storyboard.TargetName="Content"/>
                                    </Storyboard>
                                </VisualState>
                            </VisualStateGroup>
                            <VisualStateGroup x:Name="BackgroundVisibility">
                                <VisualState x:Name="BackgroundHidden">
                                    <Storyboard>
                                        <DoubleAnimation Duration="0" To="0" Storyboard.TargetProperty="Opacity" Storyboard.TargetName="OuterBorder"/>
                                        <DoubleAnimation Duration="0" To="0" Storyboard.TargetProperty="Opacity" Storyboard.TargetName="disabledBorder"/>
                                    </Storyboard>
                                </VisualState>
                                <VisualState x:Name="BackgroundVisible"/>
                            </VisualStateGroup>
                            <VisualStateGroup x:Name="FocusStatesGroup">
                                <VisualState x:Name="Unfocused">
                                    <Storyboard>
                                        <ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Visibility" Storyboard.TargetName="FocusVisual">
                                            <DiscreteObjectKeyFrame KeyTime="0:0:0.15">
                                                <DiscreteObjectKeyFrame.Value>
                                                    <Visibility>Collapsed</Visibility>
                                                </DiscreteObjectKeyFrame.Value>
                                            </DiscreteObjectKeyFrame>
                                        </ObjectAnimationUsingKeyFrames>
                                        <DoubleAnimationUsingKeyFrames Duration="0" Storyboard.TargetProperty="Opacity" Storyboard.TargetName="FocusVisual">
                                            <LinearDoubleKeyFrame KeyTime="0:0:0.15" Value="0"/>
                                        </DoubleAnimationUsingKeyFrames>
                                    </Storyboard>
                                </VisualState>
                                <VisualState x:Name="Focused">
                                    <Storyboard>
                                        <ObjectAnimationUsingKeyFrames Duration="0" Storyboard.TargetProperty="Visibility" Storyboard.TargetName="FocusVisual">
                                            <DiscreteObjectKeyFrame KeyTime="0">
                                                <DiscreteObjectKeyFrame.Value>
                                                    <Visibility>Visible</Visibility>
                                                </DiscreteObjectKeyFrame.Value>
                                            </DiscreteObjectKeyFrame>
                                        </ObjectAnimationUsingKeyFrames>
                                        <DoubleAnimation Duration="0" To="1" Storyboard.TargetProperty="Opacity" Storyboard.TargetName="FocusVisual"/>
                                    </Storyboard>
                                </VisualState>
                            </VisualStateGroup>
                        </VisualStateManager.VisualStateGroups>
                        <Border x:Name="OuterBorder" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" CornerRadius="{TemplateBinding CornerRadius}">
                            <Border x:Name="InnerBorder" BorderBrush="White" BorderThickness="{TemplateBinding BorderThickness}" Background="{TemplateBinding Background}" CornerRadius="{TemplateBinding InnerCornerRadius}"/>
                        </Border>
                        <Border x:Name="disabledBorder" BorderBrush="Transparent" BorderThickness="{TemplateBinding BorderThickness}" Background="#FFE0E0E0" CornerRadius="{TemplateBinding CornerRadius}" Visibility="Collapsed"/>
 
 
 
                      
                        <!--<ContentPresenter x:Name="Content" ContentTemplate="{TemplateBinding ContentTemplate}" Content="{TemplateBinding Content}" ContentStringFormat="{TemplateBinding ContentStringFormat}" HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" Margin="{TemplateBinding Padding}" RecognizesAccessKey="True" VerticalAlignment="{TemplateBinding VerticalContentAlignment}" Style="{DynamicResource radButton_style_label}"/>-->
                        <StackPanel Orientation="{TemplateBinding Orientation}" HorizontalAlignment="Center"
                            <Viewbox>
                                <StackPanel Width="{TemplateBinding IconWidth}" Height="{TemplateBinding IconHeight}" Visibility="{TemplateBinding IconVisibility}">
                                    <ContentPresenter x:Name="Content" ContentTemplate="{TemplateBinding ContentTemplate}" Content="{TemplateBinding Icon}" ContentStringFormat="{TemplateBinding ContentStringFormat}" HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" Margin="{TemplateBinding Padding}" RecognizesAccessKey="True" VerticalAlignment="{TemplateBinding VerticalContentAlignment}" Style="{DynamicResource radButton_style_label}"/>
                                </StackPanel>
                            </Viewbox>
                            <StackPanel Width="auto" HorizontalAlignment="Center" VerticalAlignment="Center" Orientation="Vertical">
                                <TextBlock Text="{TemplateBinding Text}" Foreground="{TemplateBinding Foreground}" FontSize="40"></TextBlock>
                            </StackPanel>
                        </StackPanel>
                         
                        <Border x:Name="CommonStatesWrapper">
                            <Border x:Name="FocusVisual" BorderBrush="#FFFFFF" BorderThickness="1" Background="Transparent" CornerRadius="{TemplateBinding CornerRadius}" Opacity="0" Visibility="Collapsed">
                                <Border x:Name="FocusInnerVisual" BorderBrush="Transparent" BorderThickness="1" CornerRadius="{TemplateBinding InnerCornerRadius}"/>
                            </Border>
                        </Border>
                    </Grid>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>
 
</ResourceDictionary>

Kiril Vandov
Telerik team
 answered on 09 Aug 2013
1 answer
229 views
I am having a color rendering problem using RadPdfViewer.  Colors are shifted when displayed through the viewer.
See below for the RGB values of the original compared to the RGB values of the Telerik display.  I cannot attach the files as they contain sensitive data.  I don't see any settings that facilitate having any influence over the color profiles. 

I'd be interested to know who else has seen similar issues as well as whether or not Telerik says this is a known issue or plans to do anything about it.

acro reader (original)

purple
RGB: 74-24-107

gray in background of center top graphic
RGB: 189-186-189

telerik

purple rendered as blue
RGB: 0-0-181

gray in background of center top graphic
RGB: 181-178-181
Kammen
Telerik team
 answered on 09 Aug 2013
3 answers
156 views
Hi,
I have used RadCartesianChart.Behaviors
<telerik:RadCartesianChart.Behaviors>
                <telerik:ChartPanAndZoomBehavior PanMode="Both" ZoomMode="Both" />
</telerik:RadCartesianChart.Behaviors>

in my application. After complete zooming when the zoom and pan bars are brought down slowly the labels of y-axis overlap with the vertical axis.
Please let me know the solution for this problem as soon as possible. How far i can make out is it the bug in the tool?
Ves
Telerik team
 answered on 09 Aug 2013
1 answer
130 views
Hi,

I want to change appointment day by day (with the cursor) in timeline (not minute by minute).

This is my xaml code :

<telerik:RadScheduleView  Grid.Row="1"
                                 AppointmentsSource="{Binding LstAppointments}"
                                 ResourceTypesSource="{Binding LstSchedulerHeaderOperations}"
                                 CategoriesSource="{Binding Categories}"
                                 CurrentDate="{Binding CurrentDate}"
                                 SelectedSlot="{Binding SelectedSlot, Mode=TwoWay}" Margin="10,20,10,10">
                <telerik:RadScheduleView.ViewDefinitions>
                    <telerik:TimelineViewDefinition VisibleDays="65"  MajorTickLength="1day" MinorTickLength="1day"
                        TimerulerMajorTickStringFormat="{}{0:dd}">
                        <telerik:TimelineViewDefinition.GroupTickLength>
                            <local:MonthlyTickProvider />
                        </telerik:TimelineViewDefinition.GroupTickLength>
                    </telerik:TimelineViewDefinition>
                </telerik:RadScheduleView.ViewDefinitions>
                <scheduleView:RadScheduleView.GroupDescriptionsSource>
                    <scheduleView:GroupDescriptionCollection>
                        <scheduleView:ResourceGroupDescription ResourceType="OP" />
                        <telerik:ResourceGroupDescription ResourceType="DETAIL" />
                    </scheduleView:GroupDescriptionCollection>
                </scheduleView:RadScheduleView.GroupDescriptionsSource>
            </telerik:RadScheduleView>


My MonthlyTickProvider class :

public class WeeklyTickProvider : DependencyObject, ITickProvider
    {
        public static readonly DependencyProperty CurrentDateProperty =
            DependencyProperty.Register(
            "CurrentDate", typeof(DateTime),
            typeof(WeeklyTickProvider), null
            );
 
        public DateTime CurrentDate
        {
            get { return (DateTime)GetValue(CurrentDateProperty); }
            set { SetValue(CurrentDateProperty, value); }
        }
 
        public static readonly DependencyProperty VisibleDaysProperty =
            DependencyProperty.Register(
            "VisibleDays", typeof(int),
            typeof(WeeklyTickProvider), null
            );
 
        public int VisibleDays
        {
            get { return (int)GetValue(VisibleDaysProperty); }
            set { SetValue(VisibleDaysProperty, value); }
        }
 
 
        public string GetFormatString(IFormatProvider formatInfo, string formatString, DateTime currentStart)
        {
            var start = currentStart.Date;
            var end = this.GetNextStart(TimeSpan.Zero /*not used, see below*/, currentStart).AddSeconds(-1);
 
            if (this.CurrentDate > start && this.CurrentDate < end)
                start = this.CurrentDate;
 
            //var viewEnd = this.CurrentDate.AddDays(this.VisibleDays).AddSeconds(-1);
 
            //if (viewEnd < end)
            //    end = viewEnd;
 
            return string.Format(formatInfo, "{0:dd/MMMM/yyyy} - {1:dd/MMMM/yyyy}", start, end);
        }
 
        public DateTime GetNextStart(TimeSpan pixelLength, DateTime currentStart)
        {
            var currentDate = currentStart.Date;
 
            var weekStart = CalendarHelper.GetFirstDayOfWeek(currentStart, DayOfWeek.Tuesday);
            if (weekStart == currentDate)
            {
                return weekStart.AddDays(7);
            }
            return weekStart;
        }
    }
 
    public class MonthlyTickProvider : ITickProvider
    {
        public string GetFormatString(IFormatProvider formatInfo, string formatString, DateTime currentStart)
        {
            return string.Format(formatInfo, "{0:MMMM - yyyy}", currentStart);
        }
 
        public DateTime GetNextStart(TimeSpan pixelLength, DateTime currentStart)
        {
            var currentDate = currentStart.Date;
 
            var monthStart = CalendarHelper.GetStartOfMonth(currentStart.Year, currentStart.Month);
            if (monthStart == currentDate)
            {
                return monthStart.AddMonths(1);
            }
            return monthStart;
        }
    }



NICOLAS
Top achievements
Rank 1
 answered on 09 Aug 2013
4 answers
396 views
I'm working with the getting started article to demonstrate a basic implementation of the DragDropManager by dragging between two ListBoxes - http://www.telerik.com/help/wpf/dragdropmanager-getting-started.html ;

The following code produces an ArgumentException error - The value "System.Windows.DataObject" is not of type "ManageDragDrop.ApplicationInfo" and cannot be used in this generic collection.

private void OnDrop(object sender, Telerik.Windows.DragDrop.DragEventArgs args)
        {
            ((IList)(sender as ListBox).ItemsSource).Add(args.Data);
        }


Nick
Telerik team
 answered on 09 Aug 2013
4 answers
230 views
Our project uses Prism with great success. One of our Prism regions is a RadTabControl and we programmatically add and remove tabs via Prism. Each of our tabs needs to have a close button so we've defined a ClosableTabItemHeader that looks like this:

<UserControl x:Class="Infrastructure.Controls.ClosableTabItemHeader"
             xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
             xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
             xmlns:telerik="http://schemas.telerik.com/2008/xaml/presentation"
             mc:Ignorable="d"
             d:DesignHeight="300"
             d:DesignWidth="300">
    <StackPanel Orientation="Horizontal">
        <TextBlock Text="{Binding Screen.DisplayName}"
                   FontWeight="DemiBold" />
        <telerik:RadButton Width="14"
                           Height="14"
                           Margin="5,0,0,0"
                           HorizontalAlignment="Center"
                           VerticalAlignment="Center"
                           Command="{Binding Screen.CloseCommand}"
                           Padding="0">
            <Image Source="pack://application:,,,/Resources;component/Glyphs/24/cross.png"
                   Height="10"
                   Width="10" />
        </telerik:RadButton>
    </StackPanel>
</UserControl>

Our RadTabItems use our ClosableTabItemHeader as such...

<telerik:RadTabItem.Header>
    <Controls:ClosableTabItemHeader DataContext="{Binding}" />
</telerik:RadTabItem.Header>

For months this worked without any problems at all. Lately, however, we're noticing that we sometimes have to click the close button two or more times for the command to execute. We've gone over our code with a fine tooth comb and from what we can tell the bound command simply isn't being called. We're out of ideas so we're hoping that Telerik might have one or two.

Greg
Pavel R. Pavlov
Telerik team
 answered on 08 Aug 2013
3 answers
637 views
Hello,

I am using a radGridView in a WPF Application I'm building. I want that if My user will hover his mouse over the radGridView, if it is full with information, it will give me the row index in a messagebox (or something like that). For that, I'm trying to use the

MouseOver MouseMove event. The Problem is, it doesn't fire, no matter what I do. Is it a known bug or am I doing any thing wrong?


Thanks in advance,

Yonatan
Dimitrina
Telerik team
 answered on 08 Aug 2013
2 answers
121 views
Hi, I'm try to test the RadPane using GUI ATPS and I use UISPY to find parts of the RadPane but, with the RadPane area hidden, leaving just the AutoHide area/button on display, when I hover the mouse over this area it does not show up in UISPY.
Dimitar
Telerik team
 answered on 08 Aug 2013
3 answers
107 views
Hi Experts,

I have done a customized settingspane referenced to the MindMap example(But I change the RadDiagramShape instead of MindmapRootShape in example case). And in the my settingspane, I have a button to open a new window, when the window closed, the settingspane will be closed by default.

What I want is to keep its showing. Or when the window closed, the settingspane should be show again. How to do it like this ? Thanks  very much. It is appreciate if you can provide me a simple example.

I know there is a solution to subscribe to window's Closed() event and reopen the settingspane. But the settingspane is a UserContorl, how can I achieve it? Example is appreciated. Thanks.
Pavel R. Pavlov
Telerik team
 answered on 08 Aug 2013
2 answers
379 views
I'm hoping somewhere here on the forums can help me as I've searched all over (on the forums) and in the documentation and examples and are coming up dry. Right now I'm building a system in where the end-user can take a product (or products) from a RadGridView and drag them over to a RadTreeView which contains Categories and onto a RadTreeViewItem. 

The entire system as it stands works perfectly for a single GridViewItem but I need to be able to support multiple items. Unfortunately I have not been able to find any solution in the demos or on the forums (most posts are either WinForm related or use the deprecated RadDragDropManager). If anyone can shed some line on how I can handle multiple items with the newer DragDropManager that would be great.

Current code is attached.

private void CatalogManageCategoriesProductsDataGrid_OnDragInitialize(object sender, DragInitializeEventArgs e)
{
    ViewModels.DropIndicationDetails details = new ViewModels.DropIndicationDetails();
 
    var GridViewItem = e.OriginalSource as GridViewRow ?? (e.OriginalSource as FrameworkElement).ParentOfType<GridViewRow>();
    var data = GridViewItem != null ? GridViewItem.Item : (sender as RadGridView).SelectedItem;
    var payload = DragDropPayloadManager.GeneratePayload(null);
 
    details.CurrentDraggedItem = data;
 
    payload.SetData("DraggedData", data);
    payload.SetData("DropDetails", details);
 
    e.Data = payload;
 
    e.DragVisual = new DragVisual()
    {
        Content = details,
        ContentTemplate = CatalogManageCategoriesProductsDataGrid.Resources["ProductDragTemplate"] as DataTemplate
    };
 
    e.DragVisualOffset = e.RelativeStartPoint;
}
Alan
Top achievements
Rank 1
 answered on 08 Aug 2013
Narrow your results
Selected tags
Tags
GridView
General Discussions
Chart
RichTextBox
Docking
ScheduleView
ChartView
TreeView
Diagram
Map
ComboBox
TreeListView
Window
RibbonView and RibbonWindow
PropertyGrid
DragAndDrop
TabControl
TileView
Carousel
DataForm
PDFViewer
MaskedInput (Numeric, DateTime, Text, Currency)
AutoCompleteBox
DatePicker
Buttons
ListBox
GanttView
PivotGrid
Spreadsheet
Gauges
NumericUpDown
PanelBar
DateTimePicker
DataFilter
Menu
ContextMenu
TimeLine
Calendar
Installer and Visual Studio Extensions
ImageEditor
BusyIndicator
Expander
Slider
TileList
PersistenceFramework
DataPager
Styling
TimeBar
OutlookBar
TransitionControl
FileDialogs
Book
ToolBar
ColorPicker
TimePicker
MultiColumnComboBox
SyntaxEditor
VirtualGrid
Wizard
ExpressionEditor
NavigationView (Hamburger Menu)
WatermarkTextBox
DesktopAlert
BarCode
SpellChecker
DataServiceDataSource
EntityFrameworkDataSource
RadialMenu
ChartView3D
Data Virtualization
BreadCrumb
LayoutControl
ProgressBar
Sparkline
TabbedWindow
ToolTip
CloudUpload
ColorEditor
TreeMap and PivotMap
EntityFrameworkCoreDataSource (.Net Core)
HeatMap
Chat (Conversational UI)
VirtualizingWrapPanel
Calculator
NotifyIcon
TaskBoard
TimeSpanPicker
BulletGraph
Licensing
WebCam
CardView
DataBar
FilePathPicker
PasswordBox
SplashScreen
Callout
Rating
Accessibility
CollectionNavigator
Localization
AutoSuggestBox
Security
VirtualKeyboard
HighlightTextBlock
TouchManager
StepProgressBar
Badge
OfficeNavigationBar
ExpressionParser
CircularProgressBar
SvgImage
PipsPager
SlideView
AI Coding Assistant
+? more
Top users last month
Bohdan
Top achievements
Rank 3
Iron
Iron
Iron
Rob
Top achievements
Rank 3
Bronze
Bronze
Iron
Elliot
Top achievements
Rank 1
Iron
Iron
Iron
Sunil
Top achievements
Rank 1
Cynthia
Top achievements
Rank 1
Iron
Iron
Iron
Want to show your ninja superpower to fellow developers?
Top users last month
Bohdan
Top achievements
Rank 3
Iron
Iron
Iron
Rob
Top achievements
Rank 3
Bronze
Bronze
Iron
Elliot
Top achievements
Rank 1
Iron
Iron
Iron
Sunil
Top achievements
Rank 1
Cynthia
Top achievements
Rank 1
Iron
Iron
Iron
Want to show your ninja superpower to fellow developers?
Want to show your ninja superpower to fellow developers?