Telerik Forums
UI for WPF Forum
3 answers
122 views
Hello, I'm trying to style the Row Details, and I'm following the instructions on the help here: http://www.telerik.com/help/wpf/gridview-styling-row-details.html
I'm not seeing the properties shown in the help file. I should see ControlOuterBorder, ControlInnerBorder, etc.. according to the help. I'm using Blend for VS 2013 Do you have a video, or a sample project that does this? Any help will be greatly appreciated .
Thanks,
Scott

Here's the XAML I get.
<Style x:Key="RowDetailsStyleCustom" TargetType="{x:Type telerik:DetailsPresenter}">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type telerik:DetailsPresenter}">
<Border x:Name="DetailsBorder" BorderBrush="#FF848484" BorderThickness="0,1">
<VisualStateManager.VisualStateGroups>
<VisualStateGroup x:Name="DetailsStates">
<VisualState x:Name="DetailsVisible">
<Storyboard>
<ObjectAnimationUsingKeyFrames BeginTime="0" Storyboard.TargetProperty="Visibility" Storyboard.TargetName="DetailsBorder">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<Visibility>Visible</Visibility>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
<VisualState x:Name="DetailsCollapsed"/>
</VisualStateGroup>
</VisualStateManager.VisualStateGroups>
<Border BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" Background="{TemplateBinding Background}">
<ContentPresenter x:Name="PART_ContentPresenter" ContentTemplate="{TemplateBinding ContentTemplate}" Content="{TemplateBinding Content}" ContentStringFormat="{TemplateBinding ContentStringFormat}" HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" Margin="{TemplateBinding Padding}" VerticalAlignment="{TemplateBinding VerticalContentAlignment}"/>
</Border>
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
<Setter Property="Visibility" Value="Collapsed"/>
<Setter Property="IsTabStop" Value="False"/>
<Setter Property="Background">
<Setter.Value>
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
<GradientStop Color="#FFC2C2C2"/>
<GradientStop Color="#FFF0F0F0" Offset="0.3"/>
</LinearGradientBrush>
</Setter.Value>
</Setter>
<Setter Property="BorderBrush" Value="White"/>
<Setter Property="BorderThickness" Value="1"/>
<Setter Property="Padding" Value="0"/>
<Setter Property="HorizontalContentAlignment" Value="Stretch"/>
<Setter Property="SnapsToDevicePixels" Value="True"/>
</Style>
</Window.Resources>



Stefan
Telerik team
 answered on 14 Mar 2018
1 answer
695 views

After some digging I still am not able to get this to work.
In short, I would like to use the Telerik Components with my own Dictionary.xaml.
Can someone please point me in the right direction or describe what needs to be done.

 

You time in this is much appreciated.

Martin
Telerik team
 answered on 14 Mar 2018
2 answers
83 views

It would be a nicer UX if a user did not have to first move the frozen column indicator in order to resize a column.

I am happy to style it myself this way but I am struggling to find the correct element, is it the PART_FrozenColumnsPreview element?

 

Regards,
Maurice

Maurice
Top achievements
Rank 1
 answered on 13 Mar 2018
1 answer
88 views
Hello, my case is: I have a RadContextMenu, and there's a RadListBox filling the RadMenuGroupItem of the RadContextMenu.  And then I added a TextBlock in the ItemTemplate of the RadListBox. And finally, I added a ContextMenu on this TextBlock, this ContextMenu on TextBlock didn't work. Right clicking on the TextBlock which is also the an Item of the RadListBox, no ContextMenu pop up, nothing happened.  So what's the reason of it?  Is this kind of case supported?  Thanks for any comments, that would be great help for me, thanks a lot. 
Stefan
Telerik team
 answered on 13 Mar 2018
1 answer
172 views

Hi, I'm trying to use the PDF Viewer control, everything works nicely except for one thing,

he toolbar theme won't change no matter what I select.

 

            <telerik:RadPdfViewerToolBar x:Name="pdfViewTools"
                                         RadPdfViewer="{Binding ElementName=pdfViewer, Mode=OneTime}"
                                         telerik:StyleManager.Theme="Fluent"
                                         HasClockwiseButton="False"
                                         HasCounterclockwiseButton="False"
                                         HasOpenButton="False"
                                         HasPageDownButton="False"
                                         HasPagesCountGroup="False"
                                         HasPageUpButton="False"
                                         HasSignatureButton="False"/>
            <telerik:RadPdfViewer x:Name="pdfViewer"
                                  DataContext="{Binding CommandDescriptors, ElementName=pdfViewer}"
                                  Grid.Row="1"
                                  telerik:StyleManager.Theme="Fluent"
                                  telerik:RadPdfViewerAttachedComponents.RegisterContextMenu="True"/>

 

Where am I going wrong?

Tanya
Telerik team
 answered on 13 Mar 2018
3 answers
204 views

Hello,

I'm working on a scenario where i have to use 2 different types of appointments, with different properties. both share a common abstract base class, which is derived from the Appointment Class.

public abstract class MyBaseClass : Appointment
{
    private string _designation;
 
    public string Designation
    {
        get { return this.Storage<MyBaseClass>()._designation; }
        set
        {
            var storage = this.Storage<MyBaseClass>();
            if (value == storage._designation) return;
            storage._designation = value;
            this.OnPropertyChanged(() => this.Designation);
        }
    }
}
 
public class DerivedType : MyBaseClass
{
    private string _longText;
 
    public string LongText
    {
        get { return this.Storage<DerivedType>()._longText; }
        set
        {
           var storage = this.Storage<DerivedType>();
            if (value == storage._longText) return;
            storage._longText = value;
            this.OnPropertyChanged(() => this.LongText);
        }
    }
}
 
public class OtherType : MyBaseClass
{
    private bool _myBool;
 
    public bool MyBool
    {
        get { return this.Storage<OtherType>()._myBool; }
        set
        {
            var storage = this.Storage<OtherType>();
            if (value == storage._myBool) return;
            storage._myBool = value;
            this.OnPropertyChanged(() => this.MyBool);
        }
    }
}

 

When using a ListBox, i would simply put multiple datatemplates with DataType={x:Type ...} into the listbox resources. As this did not work, I tried to override  ScheduleViewDataTemplateSelector:

public override DataTemplate SelectTemplate(object item, DependencyObject container, ViewDefinitionBase activeViewDefinition)
{
     Occurrence o = (item as Occurrence);
     if (o.Appointment is DerivedType)
     return this.DerivedTypeTemplate;
...
}

 

<local:TelerikScheduleTemplateSelector x:Key="ScheduleTemplateSelector">
    <local:TelerikScheduleTemplateSelector.DerivedTypeTemplate>
        <DataTemplate>
            <Grid Background="LightGray">
                <Grid.RowDefinitions>
                    <RowDefinition MinHeight="15"/>
                    <RowDefinition Height="*"/>
                </Grid.RowDefinitions>
                <Label Grid.Row="0" Content="{Binding Appointment.LongText}" />
                <Label Grid.Row="1" MinHeight="30" Margin="2"  Background="Green" />
            </Grid>
        </DataTemplate>
 
        <local:TelerikScheduleTemplateSelector.OtherTypeTemplate>
            <DataTemplate>
                <Grid Background="LightGoldenrodYellow">
                    <Grid.RowDefinitions>
                        <RowDefinition Height="20"/>
                        <RowDefinition Height="*"/>
                    </Grid.RowDefinitions>
                    <CheckBox Grid.Row="0" Margin="2" IsChecked="{Binding Appointment.MyBool}" Content="asdf" />
                </Grid>
            </DataTemplate>
        </local:TelerikScheduleTemplateSelector.OtherTypeTemplate>
</local:TelerikScheduleTemplateSelector>

 

this seems to work partially, but I found some problems:

-> the bindings are not recognized, as I cannot set the DataType to DerivedType or to OtherType 
-> Sometimes when switching to other weeks in the scheduleview, I get Binding Errors, because of a missing MyBool Property on DerivedType, and vice-versa

Is there an easier way to get different looks based on the type of the appointment? Could you point me in the right direction, or maybe provide a small sample?

Thanks a lot!

                         

 

 

Stefan
Telerik team
 answered on 13 Mar 2018
5 answers
221 views

Hi, 

we are using the rad docking and set a automationid to all levels (RadDocking, RadSplitContainer, RadPaneGroup and RadPane) but if we let the CUIT run it needs much time or he doesn´t find the control.

Also if we check the UI with AccChecker we can see that there is no AutomationId set. 

If have downloaded a example from this thread:

https://www.telerik.com/forums/cuit-is-failing-perform-actions-on-the-controls-placed-inside-the-radpanegroup#g4MK_X_CbU-XMfaGOlK9vg

But it doesn´t work on my computer and I can see that there is no automationid set. 

See AutomationIds in the Code.jpg file.

In the file ACC.jpg you could see that there is no AutomationId found. 

Currently it´s not possible to upload the source code because it´s to big and it´s not allowed.

Could you tell me where we miss something or is it a bug?

Thanks for your help.

 

Kalin
Telerik team
 answered on 13 Mar 2018
1 answer
510 views

I cannot find a way to remove the gray border in the RadPdfViewer.
The border is inside of the scrollviewer and I cannot find a way to set Borderwith or Margin or Padding to Zero.

Tanya
Telerik team
 answered on 13 Mar 2018
1 answer
258 views

I have a Window that I have dropped a RadPdfViewer on, the system added Telerik.Windows.Controls, Telerik.Windows.Controls.FixedDocumentViewers, Telerik.Windows.Documents.Core, and Telerik.Windows.Documents.Fixed.

I have done nothing else, when I run the app I get an Exception:

 

System.Windows.Markup.XamlParseException
  HResult=0x80131501
  Message=Could not load file or assembly 'Telerik.Windows.Controls.FixedDocumentViewers, PublicKeyToken=5803cfa389c90ce7' or one of its dependencies. The system cannot find the file specified.
  Source=PresentationFramework
  StackTrace:
   at System.Windows.Markup.WpfXamlLoader.Load(XamlReader xamlReader, IXamlObjectWriterFactory writerFactory, Boolean skipJournaledProperties, Object rootObject, XamlObjectWriterSettings settings, Uri baseUri)
   at System.Windows.Markup.WpfXamlLoader.LoadBaml(XamlReader xamlReader, Boolean skipJournaledProperties, Object rootObject, XamlAccessLevel accessLevel, Uri baseUri)
   at System.Windows.Markup.XamlReader.LoadBaml(Stream stream, ParserContext parserContext, Object parent, Boolean closeStream)
   at System.Windows.Application.LoadComponent(Object component, Uri resourceLocator)
   at Foundation.Windows.Controls.Pdf.PdfViewer.InitializeComponent() in D:\Mw\Insurance\Source\Alabama\Common\Foundation.Windows.Controls.Pdf\PdfViewer.xaml:line 1
Inner Exception 1:
FileNotFoundException: Could not load file or assembly 'Telerik.Windows.Controls.FixedDocumentViewers, PublicKeyToken=5803cfa389c90ce7' or one of its dependencies. The system cannot find the file specified.

Tanya
Telerik team
 answered on 12 Mar 2018
5 answers
309 views

Hi!

I'm trying to use binding in DragDropBehavior of RadListBox like this

<UserControl xmlns:telerik="http://schemas.telerik.com/2008/xaml/presentation" x:Class="MyProject.Views.MyView"
                     ....
                     xmlns:behaviors="clr-namespace:MyProject.Behaviors"
                     
mc:Ignorable="d"
                     d:DesignHeight="300"
                     d:DesignWidth="300">
<Grid>
          ...
           <telerik:RadListBox ItemsSource="{Binding Items}"
                         <telerik:RadListBox.DragDropBehavior>
                                       <behaviors:MyDragDropBehavior AllowReorder="True" DropCommand="{Binding RelativeSource={RelativeSource AncestorType={x:Type UserControl}}, Path=DataContext.DropCommand}"/>
                         </telerik:RadListBox.DragDropBehavior>
           </telerik:RadListBox>
</Grid>
</UserControl>

View gets viewmodel via injection

public partial class MyView : UserControl
{
                   public MyView (ViewModels.MyViewModel viewModel)
                   {
                                InitializeComponent();
                                DataContext = viewModel;
                    }
}

Behavior code:

public class MyDragDropBehavior : Telerik.Windows.DragDrop.Behaviors.ListBoxDragDropBehavior
{
                   public override bool CanDrop(Telerik.Windows.DragDrop.Behaviors.DragDropState state)
                   {
                                    return state.IsSameControl;
                   }
                 
                 public override void Drop(Telerik.Windows.DragDrop.Behaviors.DragDropState state)
                  {
                                  base.Drop(state);
                                  DropCommand.Execute(null);
                  }
                 
                 public ICommand DropCommand
                 {
                               get { return (ICommand)GetValue(DropCommandProperty); }
                               set { SetValue(DropCommandProperty, value); }
                 }
 
                  public static readonly DependencyProperty DropCommandProperty =DependencyProperty.Register("DropCommand", typeof(ICommand), typeof(MyDragDropBehavior), new PropertyMetadata(null));
}

Items binding is working well. Behavior is working but binding to DropCommand is not. I obtain binding error:

Cannot find source for binding with reference 'RelativeSource FindAncestor, AncestorType='System.Windows.Controls.UserControl', AncestorLevel='1''. BindingExpression:Path=DataContext.DropCommand; DataItem=null; target element is 'MyDragDropBehavior' (HashCode=25707777); target property is 'DropCommand' (type 'ICommand')

ViewModel is

public class MyViewModel
{
                     public MyViewModel()
                     {
                                      DropCommand = new DelegateCommand(OnDrop);
                                      Items = new ObservableCollection<MyItem>();
                      }
                     public ObservableCollection<MyItem> Items { get; set; }
                     public DelegateCommand DropCommand { get; set; }

                     private void OnDrop(){}
}

What is wrong?

Martin
Telerik team
 answered on 12 Mar 2018
Narrow your results
Selected tags
Tags
+? more
Top users last month
Will
Top achievements
Rank 2
Iron
Motti
Top achievements
Rank 1
Iron
Hester
Top achievements
Rank 1
Iron
Bob
Top achievements
Rank 3
Iron
Iron
Veteran
Thomas
Top achievements
Rank 2
Iron
Want to show your ninja superpower to fellow developers?
Top users last month
Will
Top achievements
Rank 2
Iron
Motti
Top achievements
Rank 1
Iron
Hester
Top achievements
Rank 1
Iron
Bob
Top achievements
Rank 3
Iron
Iron
Veteran
Thomas
Top achievements
Rank 2
Iron
Want to show your ninja superpower to fellow developers?
Want to show your ninja superpower to fellow developers?