Telerik Forums
UI for WPF Forum
7 answers
161 views
Hello,

First off all, I'd like to state the excellent work you guys did on the WPF controls. I'm using the ScheduleView quite heavily and the SP release fitted most of my needs. And I was able to add some features:

- resource availabilities (by the specialslots)
- alternative resource selection in the group headers (combobox style)
- fixed scroll when updating the resources/resourcetypecollection
- centered zooming (the zooming example zooms at the daystarttime, which is not really what it should be)
- current time - line on the dayview
- custom dragdop behavior for readonly appointments
- overriding the CalculatedScrollBarVisibilities

Currently I'm stuck on the following issue. I'd like to use the vertical dayview where I can drag existing appointments up down.
What I'm trying to achieve is that when the dragged appointment (visual cue) is near the top the calendar starts scrolling (until the start day time is met), of course I'd like to do the same thing when dragging and resizing down ! Any clue how to do this?

Thanks,
Nico


Vladi
Telerik team
 answered on 18 Jul 2012
5 answers
952 views
Hi,
q1 : I want to remove the grey background from the pdfviewer (for making a style)?

Is there a way to do this?

thanks
Kammen
Telerik team
 answered on 18 Jul 2012
1 answer
352 views
Hi,

I am looking for displaying 3D PDF in my  WPF application.  Does Telerik PDF Viewer support 3D PDF?


Thanks
Neeraj Dev 
Kammen
Telerik team
 answered on 18 Jul 2012
1 answer
137 views
Hello. I need change theme dynamic. So I  added in reference dll from Binaries.NoXaml, and added resource dictionary into app.Resources
 <Application.Resources>
        <ResourceDictionary>
            <ResourceDictionary.MergedDictionaries>
                <ResourceDictionary Source="themes\System.Windows.xaml"/>
                <ResourceDictionary Source="themes\Telerik.Windows.Controls.Input.xaml"/>
                <ResourceDictionary Source="themes\Telerik.Windows.Controls.Navigation.xaml"/>
                <ResourceDictionary Source="themes\Telerik.Windows.Controls.RibbonView.xaml"/>
                <ResourceDictionary Source="themes\Telerik.Windows.Controls.RichTextBoxUI.xaml"/>
                <ResourceDictionary Source="themes\Telerik.Windows.Documents.xaml"/>
            </ResourceDictionary.MergedDictionaries>
        </ResourceDictionary>
    </Application.Resources>

reference dll 
Telerik.Windows.Controls.dll
Telerik.Windows.Controls.Input.dll
Telerik.Windows.Controls.Navigation.dll
Telerik.Windows.Controls.RibbonView.dll
Telerik.Windows.Controls.RichTextBoxUI.dll
Telerik.Windows.Data.dll
Telerik.Windows.Documents.dll

but   RadRichTextBoxRibbonUI dont show. if i add reference dll from Binary Folder then control display.


Andrew
Telerik team
 answered on 18 Jul 2012
1 answer
248 views
Hi

I am using a system in which I supply an object with a DataTepmlate.
The object has an interface which has a DataTemplate property (dynamic DataTemplate)

I apply an ItemTemplateSelector which returns the 'DataTemplate' Property

I also have a collection (Obserable) for these objects...

I Try to implement a SplitButton with a DropDownContent but I have 2 main problems.
1) The Menu appears but a MenuItem with childs only shows the Arrow but will not open not with click and with hover.
2) The MenuItems show`s an inner button, liks there the MenuItem and a RadButton inside....

This is my XAML:
SplitButton whereas local:SplitButtonVisualCommand is my business object.
<DataTemplate DataType="{x:Type local:SplitButtonVisualCommand}">
    <telerik:RadSplitButton Command="{Binding Command}" 
                            CommandParameter="{Binding GetParameters}"
                            Opacity="{Binding RelativeSource={RelativeSource Self}, Path=IsEnabled, Converter={StaticResource DisabledWorkAround}}"
                            IsToggle="{Binding RelativeSource={RelativeSource Self}, Path = IsOpen}"
                            DropDownContent="{Binding Childs}"   
                            DropDownContentTemplateSelector="{StaticResource VisualTempSelector}">
        <telerik:RadSplitButton.Content>
            <StackPanel Orientation="Horizontal">
                <Image Source="{Binding Image}" Margin="0 0 2 0"/> 
                <TextBlock Text="{Binding Caption}" />
            </StackPanel>                
        </telerik:RadSplitButton.Content>            
    </telerik:RadSplitButton>
</DataTemplate>
.
The 'Childs' DropDownContent is an Observable collection which returns the following DataTemplate:
(The Childs object also implement the 'DataTemplae' Property....)
<DataTemplate  DataType="{x:Type VisualCommands:VisualCommandCollection}">
    <telNav:RadContextMenu  ClickToOpen="False"
                            ItemsSource="{Binding}" 
                            ItemTemplateSelector="{StaticResource VisualTemplateSelector}"/>
</DataTemplate>

As you can see, it shows itself as a RadContextMenu (can be altered to RadMenu...) and sets itself as the ItemsSource as it holds the following Business Objects:

<DataTemplate DataType="{x:Type local:ContextMenuVisualCommand}">
    <telNav:RadMenuItem Header="{Binding Caption}"
                        Icon="{Binding Image}"
                        ItemsSource="{Binding Childs}"     
                        ItemTemplateSelector="{StaticResource VisualTemplateSelector}"
                        Command="{Binding Command}" 
                        CommandParameter="{Binding GetParameters}"
                        Opacity="{Binding RelativeSource={RelativeSource Self}, Path=IsEnabled, Converter={StaticResource DisabledWorkAround}}">
    </telNav:RadMenuItem>
</DataTemplate>

local:ContextMenuVisualCommand are the same as local:SplitButtonVisualCommand , they just have a different DataTemplate.
The present as RadMenuItem....

I`v attached an Image to visualize it...

The 1st menu item knows it has childs, but wont show them.
Also, what is this strange box inside the MenuItem? does it inhrit from the SplitButton?

I also know that
ItemTemplateSelector.SelectTemplate 
gets called Twice for each sub item in the SplitButton DropDownContent, this might explain the extra box inside the MenuItem.
This is strange becuase 'SelectTemplate' is called once for all other Business objects.

Also, 'SelectTemplate' is not called for the MenuItem inside the 1st MenuItem, which has logic since it never 'Show' it...
Thanks!
Shlomi.


Shlomi
Top achievements
Rank 1
 answered on 18 Jul 2012
1 answer
149 views
Hi guys,

I'm having a very weird problem, my current telerik version is 2011.2.920.35.

I'm parsing an XML file creating a list of objects which I'm binding to the grid, the type that implements IDataErrorInfo and it's functioning well, getting a list of errors where data is erroneous. 

The problem is that the rows are not highlighted red unless the erroneous cells are visible, so if the grid does not fit in screen, the erroneous records are displayed as normal until the user scrolls right. Once these records are highlighted red they will remain so even if the user scrolls back to left - however if the user scrolls right and scrolls down and back up, these records will not be red any more. See screenshot for explanation.

Any help will be greatly appreciated.

Thanks,
Daryl
Markus
Top achievements
Rank 1
 answered on 17 Jul 2012
2 answers
174 views
I have an object with custom properties. The only properties I wish to display in the property grid are those of category "MyCategory". How would I do that programatically?

protected string myproperty;
 
[Category("MyCategory")]
public string MyProperty{ get; set; }

I'm already setting the item and populating the RadPropertyGrid; it's the filtering I'm stuck on.

RadPropertyGrid1.Item = n;
Art Kedzierski
Top achievements
Rank 2
 answered on 17 Jul 2012
1 answer
254 views
Hi,

I am using RadListBox (Binded to ObservableCollection<string>) and when I navigate through the RadListbox using up and down keys, selectedItem changes automatically. How can I disable this behaviour? I only want to change SelectedItem only by pressing Enter Key or by Mouse's LeftClick in MVVM.
George
Telerik team
 answered on 17 Jul 2012
1 answer
321 views
In the chart I'm developing the user needs to be able to exclude or include series at runtime. 

If I have understood the information correctly so far it is not possible to XAML-declare series on this kind of dynamic sources but that it is something you're considering for a future update. I didn't want to do it all using code behind becuase that would mess up my ability to declare templates for each series and its trackball.

So, instead I build a small ChartBehavior that acts as the "glue" between my dynamic data series and the chart. It works as expected except for one detail: A series that gets omitted and then included again always ends up at the bottom of the trackball info popup. I assumed that the order of the items in the trackball popup was based on the physical order of the Chart.Series collection so the the behavior saves the initial order to be able to re-insert an omitted series at its original position but this does not work.

How can I affect the order of the items in the trackball info popup?

internal sealed class DynamicCategoricalSeriesBehavior : ChartBehavior
{
    private class SeriesInfo
    {
        public string SeriesKey { get; private set; }
        public int Index { get; set; }
 
        public SeriesInfo(string seriesKey, int seriesIndex)
        {
            Index = seriesIndex;
            SeriesKey = seriesKey;
        }
    }
    private Dictionary<CategoricalSeries, SeriesInfo> _categoricalSeries;
 
    protected override void OnAttached()
    {
        base.OnAttached();
        Chart.DataContextChanged += chartDataContextChanged;
        listenToDataContextPropertyChanged(Chart.DataContext as INotifyPropertyChanged);
    }
 
    protected override void OnChartTemplateChanged(Canvas oldAdornerContainer, Canvas adornerContainer)
    {
        base.OnChartTemplateChanged(oldAdornerContainer, adornerContainer);
        saveCategoricalSeriesValuePropertyNames();
        transformMetricsForSeries(Chart as RadCartesianChart);
    }
 
    private void saveCategoricalSeriesValuePropertyNames()
    {
        var cartesianChart = Chart as RadCartesianChart;
        if (cartesianChart == null)
            return;
 
        _categoricalSeries = new Dictionary<CategoricalSeries, SeriesInfo>();
        var seriesIndex = 0;
        foreach (var series in cartesianChart.Series)
        {
            var catSeries = series as CategoricalSeries;
            if (catSeries == null)
                continue;
 
            var propertyNameValueBinding = catSeries.ValueBinding as PropertyNameDataPointBinding;
            if (propertyNameValueBinding == null)
                continue;
 
            _categoricalSeries[catSeries] = new SeriesInfo(propertyNameValueBinding.PropertyName, seriesIndex++);
        }
    }
 
    private void chartDataContextChanged(object sender, DependencyPropertyChangedEventArgs e)
    {
        listenToDataContextPropertyChanged(Chart.DataContext as INotifyPropertyChanged);
    }
 
    private void listenToDataContextPropertyChanged(INotifyPropertyChanged vm)
    {
        if (vm == null)
            return;
 
        vm.PropertyChanged += (o, args) =>
        {
            if (args.PropertyName == "DynamicDataSeries")
                transformMetricsForSeries(Chart as RadCartesianChart);
        };
    }
 
    private void transformMetricsForSeries(RadCartesianChart chart)
    {
        if (chart == null)
            return;
 
        var dynamicVM = Chart.DataContext as IDynamicMetricsValueSeriesProvider<double>;
        if (dynamicVM == null)
            return;
 
        var supportedSeries = dynamicVM.DynamicDataSeries.Select(series => series.SeriesKey).ToList();
 
        foreach (var kvp in _categoricalSeries)
        {
            var series = kvp.Key;
            var seriesKey = kvp.Value.SeriesKey;
            if (!supportedSeries.Contains(seriesKey))
            {
                removeSeries(chart, series, seriesKey);
                continue;
            }
            insertSeries(chart, series, seriesKey, dynamicVM);
        }
    }
 
    private void insertSeries(RadCartesianChart chart, CategoricalSeries series, string key, IDynamicMetricsValueSeriesProvider<double> seriesProvider)
    {
        if (series.Visibility != Visibility.Visible)
        {
            series.Visibility = Visibility.Visible;
            var index = _categoricalSeries[series].Index;
            chart.Series.Insert(index, series);
        }
        var dataPoints = seriesProvider.MetricsData.Where(i => i.MetricsId == key).ToList();
        series.ValueBinding = new PropertyNameDataPointBinding("Value");
        series.ItemsSource = dataPoints;
        var stroked = series as CategoricalStrokedSeries;
        if (stroked != null)
            stroked.Stroke = seriesProvider.GetMetricsDataColorBrush(key);
    }
 
    private void removeSeries(RadCartesianChart chart, CategoricalSeries series, string key)
    {
        chart.Series.Remove(series);
        series.Visibility = Visibility.Collapsed;
    }
}


Giuseppe
Telerik team
 answered on 17 Jul 2012
1 answer
56 views
I Have a RadContextMenu in XAML in a RadTreeView that works fine. I dynamically load the tree items, and certain tree items I add a different Context menu, but it always opens the RadContextMenu in xaml. If I remove the xaml RadContextMenu ref, the dynamic ContextMenu loads.

So I guess is there a way to prevent every child from inheriting its parents context menu?

Thanks
Ivo
Telerik team
 answered on 17 Jul 2012
Narrow your results
Selected tags
Tags
+? more
Top users last month
Rob
Top achievements
Rank 3
Iron
Iron
Iron
Atul
Top achievements
Rank 1
Iron
Iron
Iron
Alexander
Top achievements
Rank 1
Veteran
Iron
Serkan
Top achievements
Rank 1
Iron
Shawn
Top achievements
Rank 1
Iron
Iron
Want to show your ninja superpower to fellow developers?
Top users last month
Rob
Top achievements
Rank 3
Iron
Iron
Iron
Atul
Top achievements
Rank 1
Iron
Iron
Iron
Alexander
Top achievements
Rank 1
Veteran
Iron
Serkan
Top achievements
Rank 1
Iron
Shawn
Top achievements
Rank 1
Iron
Iron
Want to show your ninja superpower to fellow developers?
Want to show your ninja superpower to fellow developers?