Telerik Forums
UI for WPF Forum
1 answer
153 views
Hello,

I'm trying AnimationSelector Expand/Collapse not work in WPF in Silverlight not any problem. Thanks.

<Style x:Key="RadComboBoxStyle" TargetType="telerik:RadComboBox">
    <Setter Property="Template" Value="{StaticResource NonEditableComboBox}"/>
    <Setter Property="EditableTemplate" Value="{StaticResource EditableComboBox}"/>
    <Setter Property="NonEditableTemplate" Value="{StaticResource NonEditableComboBox}"/>
    <Setter Property="HorizontalContentAlignment" Value="Stretch"/>
    <Setter Property="VerticalContentAlignment" Value="Center"/>
    <Setter Property="MinHeight" Value="22"/>
    <Setter Property="Padding" Value="4,0,20,0"/>
    <Setter Property="Background" Value="{StaticResource MarkerBrush}"/>
    <Setter Property="BorderThickness" Value="1"/>
    <Setter Property="UseLayoutRounding" Value="True"/>
    <Setter Property="telerik:AnimationManager.AnimationSelector">
        <Setter.Value>
            <telerik:AnimationSelector>
                <telerik:AnimationGroup AnimationName="Expand">
                    <telerik:SlideAnimation Direction="In" SlideMode="Top" TargetElementName="PopupRoot"/>
                </telerik:AnimationGroup>
                <telerik:AnimationGroup AnimationName="Collapse">
                    <telerik:SlideAnimation Direction="Out" SlideMode="Top" TargetElementName="PopupRoot"/>
                </telerik:AnimationGroup>
            </telerik:AnimationSelector>
        </Setter.Value>
    </Setter>
    <Setter Property="FontFamily" Value="Segoe UI"/>
    <Setter Property="FontSize" Value="12"/>       
    <Setter Property="BorderBrush" Value="{StaticResource MainBrush}"/>
    <Setter Property="Foreground" Value="{StaticResource BasicBrush}"/>
    <Setter Property="ItemContainerStyle" Value="{StaticResource RadComboBoxItemStyle}"/>
</Style>
Masha
Telerik team
 answered on 09 May 2013
1 answer
211 views
Hello,
I have a problem with grid repainting/coloring the RadHorizontalLinearGauge that is inside my colum cell template when the datasource of the grid is changed. Let me explain my scenario, I have the following class:
public class Strand : BaseObject
    {
        private long stranNo;
        public long StrandNo
        {
            get { return this.stranNo; }
            set { this.stranNo = value; this.OnPropertyChanged("StrandNo"); }
        }
 
        private string strandName;
        public string StrandName
        {
            get { return this.strandName; }
            set { strandName = value; this.OnPropertyChanged("StrandName"); }
        }
 
        private List<GridData> gridData;
        public List<GridData> GridData
        {
            get { return gridData; }
            set { gridData = value; this.OnPropertyChanged("GridData"); }
        }
 
        private bool isSelected;
        public bool IsSelected
        {
            get { return isSelected; }
            set { isSelected = value; this.OnPropertyChanged("IsSelected"); }
        }
    }
As you can see, it has 4 properties and one of them is the list of data to be binded on the grid. My view model contains only the list of Strands. So I made an itemcontrol that has as source the list of strands and creates a radio group button for each element in the list. The ItemsSource of the grid is binded to the selectedStrand, and the data are changing in base of the selected radio button. Here is the xaml
<Grid>
                <Grid.RowDefinitions>
                    <RowDefinition Height="Auto" />
                    <RowDefinition Height="Auto" />
                    <RowDefinition Height="*" />
                </Grid.RowDefinitions>
                <ItemsControl ItemsSource="{Binding Strands}" Grid.Row="0">
                    <ItemsControl.ItemTemplate>
                        <DataTemplate>
                            <RadioButton Content="{Binding StrandName}" Margin="5" IsChecked="{Binding IsSelected}" GroupName="Strands"/>
                        </DataTemplate>
                    </ItemsControl.ItemTemplate>
                    <ItemsControl.ItemsPanel>
                        <ItemsPanelTemplate>
                            <StackPanel Orientation="Horizontal" />
                        </ItemsPanelTemplate>
                    </ItemsControl.ItemsPanel>
                </ItemsControl>
                <Button Content="Rebind" Margin="5" Grid.Row="1" MaxWidth="80" Click="RebindButton_Click"/>
                <GroupBox Header="Grid" Margin="5" Grid.Row="2">
                    <telerik:RadGridView x:Name="Grid"
                                     Margin="5"
                                     IsFilteringAllowed="True"
                                     IsReadOnly="True"
                                     CanUserFreezeColumns="True"
                                     CanUserReorderColumns="False"
                                     CanUserResizeColumns="True"
                                     RowIndicatorVisibility="Collapsed"
                                     AutoGenerateColumns="False"
                                     ScrollViewer.CanContentScroll="True"
                                     ScrollViewer.VerticalScrollBarVisibility="Visible"
                                     ItemsSource="{Binding SelectedStrand.GridData}">
                        <telerik:RadGridView.Columns>
                            <telerik:GridViewDataColumn Header="Name"
                                                    DataMemberBinding="{Binding Name}"
                                                    HeaderTextAlignment="Center"
                                                    Width="Auto" />
                            <telerik:GridViewDataColumn Header="Value"
                                                    DataMemberBinding="{Binding Value}"
                                                    HeaderTextAlignment="Center"
                                                    TextAlignment="Left"
                                                    Width="Auto" />
                            <telerik:GridViewDataColumn Header="Gauge"
                                                HeaderTextAlignment="Center"
                                                Width="*" >
                                <telerik:GridViewDataColumn.CellTemplate>
                                    <DataTemplate>
                                        <telerik:RadHorizontalLinearGauge Margin="5" Height="15">
                                            <telerik:HorizontalLinearScale
                                                Min="{Binding MinGaugeValue, Source={StaticResource Model}}"
                                                Max="{Binding MaxGaugeValue, Source={StaticResource Model}}"
                                                LabelFormat="{}{0}"
                                                LabelLocation="OverCenter"
                                                FontSize="8"
                                                FontFamily="Comic Sans MS"
                                                FontStyle="Normal"
                                                MajorTickLocation="OverOutside"
                                                MiddleTickLocation="OverOutside"
                                                MinorTickLocation="OverOutside"
                                                RangeLocation="OverCenter"
                                                MajorTickRelativeHeight="0.2"
                                                MiddleTickRelativeHeight="0.1"
                                                MinorTickRelativeHeight="0.05"
                                                MiddleTicks="1"
                                                RelativeHeight="1"
                                                RelativeWidth="1"
                                                RelativeX="0"
                                                RelativeY="0.5"
                                                Foreground="Black"
                                                Ranges="{Binding VariableRanges, Converter={StaticResource variableRangeToTelerikRanges}}">
                                                <telerik:LinearScale.Indicators>
                                                    <telerik:Marker telerik:ScaleObject.Location="Inside"
                                                    telerik:ScaleObject.RelativeWidth="0.04*"
                                                    telerik:ScaleObject.RelativeHeight="0.5*"
                                                    Value="{Binding Value}"/>
                                                </telerik:LinearScale.Indicators>
                                            </telerik:HorizontalLinearScale>
                                        </telerik:RadHorizontalLinearGauge>
                                    </DataTemplate>
                                </telerik:GridViewDataColumn.CellTemplate>
                            </telerik:GridViewDataColumn>
                        </telerik:RadGridView.Columns>
                    </telerik:RadGridView>
                </GroupBox>
            </Grid>
The first time that the application starts everything is ok and for all the rows the gauges are colored as you can see in gaugefirstload.jpg. But when the other radio button is selected and the grid's itemssource is changed the gauges are drawn inside the grid cells but there are not colored and I see them black & white as in GaugeAfterRadioChanged.jpg. When I play with the scroll the coloring of the gauges is casual as in GaugeAfterRadioChangedAndScroll.jpg. I tried to use the Rebind() of the grid, but it didn't help. Is there some event or something that can be used to force the grid to repaint itself and color the gauges when radio button changes?
I can send you the sample solution that I made and where you can see this behaviour, maybe it woud be easier for you to understand and simulate the problem, just tell me how cause the zipped solution has around 30mb.
Thanks
Kindly regards
Gina
Pavel Pavlov
Telerik team
 answered on 09 May 2013
1 answer
343 views
I have the DatePicker styled to use the Windows8 theme with the following XAML, I want to know how I can set the AccentColor on the Windows8 theme from XAML, the documentation is not clear:

<Style TargetType="telerik:RadDatePicker">
        <Setter Property="telerikControls:StyleManager.Theme"
                Value="Windows8" />
        <Setter Property="MinHeight"
                Value="20" />
        <Setter Property="Height"
                Value="20" />
        <Setter Property="FontFamily"
                Value="{StaticResource MyRegularFont}" />
        <Setter Property="FontSize"
                Value="{StaticResource NormalFontSize}" />
    </Style>

The documentation here show how to set the colors in code behind and how to access the colors in XAML but does not show how to set the colors in XAML

http://www.telerik.com/help/wpf/common-styles-appearance-colorizing-metro-theme.html



ta


Ollie

Masha
Telerik team
 answered on 09 May 2013
6 answers
156 views
I'm facing this weird issue of the appoint filter not working the second time around.

My Application has calendars for different users.

When I first load the scheudle view (calendar) and try to filter it all works well. But then when I try to change the calendar for another user and then apply filter on it, nothing seems to happen. 

When I debugged, I realised that the predicate does hit all the time the filter is supposed to be called. But the second time around the predicate doesn't call the filter appointment method at all. I'm puzzled as to why this happens and need you to help me. 

As a background, I've bound the predicate (FilteredAppointments) to the appointment filter property in the xaml and the predicate then calls the filter appointment method (which returns a bool for each appointment). Also, all these are in separate classes, i.e. the predicate and the filterAppointments method.

Please help, need to resolve this ASAP.
Miroslav Nedyalkov
Telerik team
 answered on 09 May 2013
1 answer
572 views
Hi,

There is GridView with some columns and want to display total of one of the column which is having data of type System.Double. I had look at the same and tried to implement the same but it didn't work and end-up with following exception.

Code
<telerik:GridViewDataColumn DataMemberBinding="{Binding TravelRate, StringFormat=c}"
                                            UniqueName="TravelRate"
                                            Header="Travel Rate"
                                            MinWidth="100">
                    <telerik:GridViewDataColumn.AggregateFunctions>
                        <telerik:SumFunction Caption="Sum: "
                                             ResultFormatString="{}{0:c}"
                                             SourceField="UnitPrice" />
                    </telerik:GridViewDataColumn.AggregateFunctions>
</telerik:GridViewDataColumn>

Exception
No generic method 'Sum' on type 'System.Linq.Enumerable' is compatible with the supplied type arguments and arguments. No type arguments should be provided if the method is non-generic.

I also had a look at another post where it's mentioned create custom aggregation function. I tried it but didn't get any success.

Code
public class SumFunction : EnumerableSelectorAggregateFunction
    {
        protected override string AggregateMethodName
        {
            get { return "Sum"; }
        }

        protected override Type ExtensionMethodsType
        {
            get
            {
                return typeof(Amounts);
            }
        }
    }

    public static class Amounts
    {
        public static Double Sum<T>(IEnumerable<T> source, Func<T, Double> selector)
        {
            return source.Select(selector).Aggregate(Double.Parse("0"), (t1, t2) => t1 + t2);
        }
    }

Can please some one help me with this?

Thanks.

Yoan
Telerik team
 answered on 09 May 2013
24 answers
801 views
Is there a way to customize the Enum dropdown list for a field?  We have different permission settings for our applications, and we have to limit options for some users.  An Example would be to have the following code:

Enum Produce
Apples
Oranges
Pears
Peaches
End Enum

Where we can set the 'Produce' field for some users to be able to see and select Apples and Oranges only, while others can  see and select the full list.

I have been directed to this article: http://www.telerik.com/help/wpf/radcombobox-howto-enable-disable-radcombobox-items.html, but that deals with setting it up with Xaml.  I need to change the list on the fly at runtime, and have accessed the RadComboBox with this line of code:

ComboBoxItems = RadPropertyGrid1.ChildrenOfType(Of RadComboBox)()

But now that I have it, how can I manipulate the list?  I have autobinding on, so when I try to clear or set the items manually, I get the error:

"Operation is not valid while ItemsSource is in use. Access and modify elements with ItemsControl.ItemsSource instead."

Maya
Telerik team
 answered on 08 May 2013
2 answers
88 views
Hello,
we are facinga big problem with radchart performance. when we are plotting the graph with around 1000 rows in local enviroment it takes about 4-5 seconds , but when i deploy the same application on server it takes around 45-50 seconds to plot the graph .


Please, could you provide any help for this?

Thanks.

Ankur
 
Petar Kirov
Telerik team
 answered on 08 May 2013
3 answers
276 views

I have a template selector that I would like to work with the RadPanelBarItem items presenter. Unfortunatley the template is never called. I am doing the following:

<telerik:RadPanelBar Grid.Row="1" x:Name="PART_RAD_PANEL_BAR" Margin="5,5,0,0" ItemsSource="{Binding UpdateSourceTrigger=PropertyChanged, Path=ExperimentCollection.ExperimentTriggerCollection, NotifyOnSourceUpdated=True}" >             
</telerik:RadPanelBar>

And am using the following Style for the RadPanelBarItem (Cut for brevity)

<Style x:Key="PanelBarItemKey" TargetType="{x:Type telerik:RadPanelBarItem}">
    <Setter Property="Background">
        <Setter.Value>
            <LinearGradientBrush EndPoint="0.5,1"
                                 StartPoint="0.5,0">
                <GradientStop Color="White" />
                <GradientStop Color="Gainsboro"
                              Offset="0.43" />
                <GradientStop Color="#FFADADAD"
                              Offset="0.44" />
                <GradientStop Color="#FFD4D4D4"
                              Offset="1" />
            </LinearGradientBrush>
        </Setter.Value>
    </Setter>
    <Setter Property="BorderBrush"
            Value="#FF848484" />
    <Setter Property="BorderThickness"
            Value="1" />
    <Setter Property="Foreground"
            Value="Black" />
    <Setter Property="Padding"
            Value="3" />
    <Setter Property="HorizontalContentAlignment"
            Value="Stretch" />
    <Setter Property="VerticalContentAlignment"
            Value="Stretch" />
    <Setter Property="HeaderTemplate"
            Value="{StaticResource PanelBarItemTemplate}" />
    <Setter Property="ItemsSource"
            Value="{Binding SelectedTrigger}" />
    <Setter Property="ItemTemplateSelector"
            Value="{StaticResource TriggerTemplateSelectorKey}" />
    <Setter Property="ChildItemsTemplate">


And the following Template Selector:

Public Class TriggerTemplateSelector
    Inherits DataTemplateSelector
 
    Public Overrides Function SelectTemplate(ByVal item As Object, ByVal container As DependencyObject) As DataTemplate
 
        If item IsNot Nothing Then
 
            Dim et As ExperimentTrigger = CType(item, ExperimentTrigger)
 
            Dim element As FrameworkElement
            element = TryCast(container, FrameworkElement)
 
            Select Case et.TriggerType
                Case "Timer"
                    Return TryCast(element.FindResource("TimerTriggerTemplate"), DataTemplate)
                Case "Damage"
                    Return TryCast(element.FindResource("TriggerDamageTemplate"), DataTemplate)
                Case "IED Detonation"
                    Return TryCast(element.FindResource("TriggerDetonationTemplate"), DataTemplate)
            End Select
 
        Else
            Return Nothing
        End If
 
        Return Nothing
 
    End Function
End Class

The Items in the RadPanelBarItems need to call the template selector which I thought would be called by setting the ItemTemplateSelector in the Style, but this does not seem to be the case. How can I call my template selector in the RadPanelBarItem Style?

I am using the following to link to further illustrate.

If I do the following in XAML the template selector is called but I don't know how many RadPabelBarItems I will have:

<telerik:RadPanelBar Grid.Row="1"
                     Margin="5,5,0,0"
                     >
 
    <telerik:RadPanelBarItem Header="Test"
                             Style="{x:Null}"
                             ItemTemplateSelector="{StaticResource TriggerTemplateSelectorKey}"
                             ItemsSource="{Binding UpdateSourceTrigger=PropertyChanged, Path=ExperimentCollection.ExperimentTriggerCollection, NotifyOnSourceUpdated=True}" />
</telerik:RadPanelBar>


I have not had any luck with this so I am currently trying to do it procedurally. Is this possible to do this in XAML?

Regards,
Joseph

Tina Stancheva
Telerik team
 answered on 08 May 2013
6 answers
388 views
Hello

When I open a PDF using the "Open" button on the radtoolbar, I'd like to get the path of the selected PDF.  What's the best way to do this?  It would also work to pull this as a property from the pdfdocumentsource object etc. if available.

Thanks
Mark
Mark
Top achievements
Rank 1
 answered on 08 May 2013
2 answers
168 views
Hello,

In my RadGridView I have a field "Fruits" which is a comma separated string such as "apple, orange, banana". When I group on Fruits, the groups are created based on the string value in the Fruits .. What I want is  separate group for each value in the Fruits column .. Is there a way I can achieve this? I saw examples of CustomGroupDescriptors, will that help me achieve this functionality?

Thanks.
Rossen Hristov
Telerik team
 answered on 08 May 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
Book
FileDialogs
ToolBar
ColorPicker
TimePicker
SyntaxEditor
MultiColumnComboBox
VirtualGrid
Wizard
ExpressionEditor
NavigationView (Hamburger Menu)
DesktopAlert
WatermarkTextBox
BarCode
SpellChecker
DataServiceDataSource
EntityFrameworkDataSource
RadialMenu
ChartView3D
Data Virtualization
BreadCrumb
ProgressBar
Sparkline
LayoutControl
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
Rating
SplashScreen
Accessibility
Callout
CollectionNavigator
Localization
AutoSuggestBox
VirtualKeyboard
HighlightTextBlock
Security
TouchManager
StepProgressBar
Badge
OfficeNavigationBar
ExpressionParser
CircularProgressBar
SvgImage
PipsPager
SlideView
AI Coding Assistant
+? more
Top users last month
Rob
Top achievements
Rank 3
Bronze
Iron
Iron
Sergii
Top achievements
Rank 1
Iron
Iron
Dedalus
Top achievements
Rank 1
Iron
Iron
Lan
Top achievements
Rank 1
Iron
Doug
Top achievements
Rank 1
Want to show your ninja superpower to fellow developers?
Top users last month
Rob
Top achievements
Rank 3
Bronze
Iron
Iron
Sergii
Top achievements
Rank 1
Iron
Iron
Dedalus
Top achievements
Rank 1
Iron
Iron
Lan
Top achievements
Rank 1
Iron
Doug
Top achievements
Rank 1
Want to show your ninja superpower to fellow developers?
Want to show your ninja superpower to fellow developers?