Telerik Forums
UI for WPF Forum
1 answer
98 views
I have a situation where I need to base the grid on an observable collection and I want to auto generate the columns based on the values of the Period property of the collection. For example, given the following code I want the column headers to display 2013, 2014, 2015, etc.

Imports System.Collections.ObjectModel
 
Class MainWindow
 
    Private Sub MainWindow_Loaded(sender As Object, e As RoutedEventArgs) Handles Me.Loaded
        Dim colSubjects As New ObservableCollection(Of Subject)
 
        colSubjects.Add(New Subject With {.Period = 2013, .Subject = "English", .Average = 1.65})
        colSubjects.Add(New Subject With {.Period = 2014, .Subject = "English", .Average = 18.6})
        colSubjects.Add(New Subject With {.Period = 2015, .Subject = "English", .Average = 15.4})
        colSubjects.Add(New Subject With {.Period = 2016, .Subject = "English", .Average = 8.2})
        colSubjects.Add(New Subject With {.Period = 2017, .Subject = "English", .Average = 9.72})
        colSubjects.Add(New Subject With {.Period = 2018, .Subject = "English", .Average = 8.55})
 
        colSubjects.Add(New Subject With {.Period = 2013, .Subject = "Mathematics", .Average = 1.65})
        colSubjects.Add(New Subject With {.Period = 2014, .Subject = "Mathematics", .Average = 18.6})
        colSubjects.Add(New Subject With {.Period = 2015, .Subject = "Mathematics", .Average = 15.4})
        colSubjects.Add(New Subject With {.Period = 2016, .Subject = "Mathematics", .Average = 8.2})
        colSubjects.Add(New Subject With {.Period = 2017, .Subject = "Mathematics", .Average = 9.72})
        colSubjects.Add(New Subject With {.Period = 2018, .Subject = "Mathematics", .Average = 8.55})
 
        colSubjects.Add(New Subject With {.Period = 2013, .Subject = "Biology", .Average = 1.65})
        colSubjects.Add(New Subject With {.Period = 2014, .Subject = "Biology", .Average = 18.6})
        colSubjects.Add(New Subject With {.Period = 2015, .Subject = "Biology", .Average = 15.4})
        colSubjects.Add(New Subject With {.Period = 2016, .Subject = "Biology", .Average = 8.2})
        colSubjects.Add(New Subject With {.Period = 2017, .Subject = "Biology", .Average = 9.72})
        colSubjects.Add(New Subject With {.Period = 2018, .Subject = "Biology", .Average = 8.55})
 
        gvRigs.ItemsSource = colSubjects
    End Sub
 
    Private Class Subject
        Public Subject As String
        Public Period As Integer
        Public Average As Single
    End Class
End Class

Does anyone have any suggestions?
Dimitrina
Telerik team
 answered on 14 Dec 2013
3 answers
116 views
Hi,

I am new to Rad Controls/Diagram and would like some help if possible.

What I would like to do is cancel a connection between two items within the diagram based on the target's type.

Is this possible, if so, how would I go about it?

Thanks
Paul.
Pavel R. Pavlov
Telerik team
 answered on 14 Dec 2013
3 answers
178 views
I'm trying to add a shape from code adding an element to the graphsource property.
Everything works as expected: the new shape is added to the diagram at position (0, 0) unless I set a different value.

Is it possible to compute a "meaningful" position using a layout algorithm?
Of course I can add the shape and then trigger a diagram layout, but this will affect the position of every shape...
Pavel R. Pavlov
Telerik team
 answered on 14 Dec 2013
3 answers
289 views

Hi Telerik,

I have a few questions regarding the usage of the RadDocument.  According to my scenario I prepare different Documents in Designer (using RadRichTextBox) with Placeholders,  which are implemented with the InlineUIContainers and child TextBlock element,  and then this serialize document to HTML and retain in the Storage.
In the various Application background processes we use the prepared Doument "template" for generating HTML documents,  by replacing the Placeholders with the real-time data.
To do it, we 
try to deserialize the RadDocument from the HTML and then use RadDocument DOM model for easier and safer Placeholder replacement operation.  The only way we found to do it on Application Server is to use methods  HtmlFormatProvider.Import, HtmlFormatProvider.Export. BUT they are not designed to be used in a such way as they expect to be run only in STA thread, so we got an exception:

InvalidOperationException with message "The calling thread must be STA, because many UI components require this."

Creating a dedicated STA thread for processing each documents works only under non-stressful conditions, and definitely failed on contrary with the confusing exception:

System.ComponentModel.Win32Exception (0x80004005): The operation completed successfully

Could you please suggest any way to overcome our problem, or suggest another approach for working with RadDocuments in background processes?

 

Thanks

Petya
Telerik team
 answered on 14 Dec 2013
1 answer
124 views
HI,

I use this XMAL :
<telerik:TimelineViewDefinition
  GroupTickLength="1m"
  StretchAppointments="False"
  StretchGroupHeaders="True"
  MinTimeRulerExtent="1"/>

but the appointments will be stretched... (see attachment)
I use my own AppointmentItemContentTemplate with a TextBlock and a ProgressBar and set the MinAppointmentHeight="40"

How yould I fix this issue?

Thx
Kalin
Telerik team
 answered on 14 Dec 2013
1 answer
91 views

Hi,


For my purposes, I am using RadRichTextBox instead of RadTextBox in order to take advantage of the spell check, where incorrect words get underlined.



I need to create something similar to an EmptyContent property in RadMaskedTextInput control.  Can someone suggest how to such behavior to the RadRichTextBox?



Thank you in advance,



Michael

Petya
Telerik team
 answered on 13 Dec 2013
3 answers
243 views
Hello,

It seems to have a bug with async binding and GridView.

Indeed when i create a grid view with synchronous binding like that :

<telerik:RadGridView Margin="5,5,5,5" IsReadOnly="True" AutoGenerateColumns="False" ColumnsWidthMode="Fill" ShowColumnHeaders="True" ShowGroupPanel="True" ItemsSource="{Binding Path=AssetAnalysers}"
                        <telerik:RadGridView.Columns> 
                            <telerik:GridViewDataColumn x:Name="AlertTypeColumn"  HeaderText="Type" UniqueName="Analyser.Name" Width="100"/> 
                            <telerik:GridViewDataColumn x:Name="AlertNameColumn"  HeaderText="Name" UniqueName="AnalysedObjectId"/> 
                            <telerik:GridViewDataColumn x:Name="AlertLevelColumn" HeaderText="Level" UniqueName="Level" Width="100"/> 
                            <telerik:GridViewDataColumn x:Name="AlertMessageColumn" HeaderText="Message" UniqueName="Message"/> 
                        </telerik:RadGridView.Columns> 
                    </telerik:RadGridView> 

Everything works well.

But when i try to make Asynchronous Binding (because the property AssetAnalysers take time to load) like that :

                    <telerik:RadGridView Margin="5,5,5,5" IsReadOnly="True" AutoGenerateColumns="False" ColumnsWidthMode="Fill" ShowColumnHeaders="True" ShowGroupPanel="True" ItemsSource="{Binding Path=AssetAnalysers, IsAsync=true}"
                        <telerik:RadGridView.Columns> 
                            <telerik:GridViewDataColumn x:Name="AlertTypeColumn"  HeaderText="Type" UniqueName="Analyser.Name" Width="100"/> 
                            <telerik:GridViewDataColumn x:Name="AlertNameColumn"  HeaderText="Name" UniqueName="AnalysedObjectId"/> 
                            <telerik:GridViewDataColumn x:Name="AlertLevelColumn" HeaderText="Level" UniqueName="Level" Width="100"/> 
                            <telerik:GridViewDataColumn x:Name="AlertMessageColumn" HeaderText="Message" UniqueName="Message"/> 
                        </telerik:RadGridView.Columns> 
                    </telerik:RadGridView> 

At the first loading the four columns are well generated but when my property AssetAnalysers change (it's a INotifyChangedProperty), the binding seems correct but my columns are not generated. So, the GridView looks like empty (but i have rows).

Where is the problem ?

By the way what's the difference and the correct using of UniqueName, DataMemberBinding and DataMemberPath Properties when you have already a binding on ItemSource.

Thank you in advance for your answer.

G. Moelens





Ido
Top achievements
Rank 1
 answered on 13 Dec 2013
3 answers
222 views

I have a WPF application that uses the Rad Controls for WPF.  On one of the windows, there is a RadDateTimePicker:


   

<telerik:RadDateTimePicker FontSize="{x:Static res:Car.Common_DataEntryFontSize}"
                                           FontWeight="Bold"
                                           Grid.Column="1"
                                           Grid.Row="2"
                                           Height="35"
                                           Margin="5,5,30,5"
                                           Name="BeginDatePicker"
                                           SelectedValue="{Binding Converter={StaticResource DateConverterForPicker}, Mode=TwoWay, Path=LocalBeginDate, UpdateSourceTrigger=PropertyChanged, ValidatesOnDataErrors=True}"
                                           SelectionChanged="BeginDatePicker_SelectionChanged"
                                           TabIndex="4"
                                           Validation.ErrorTemplate="{StaticResource InputErrorTemplate}"
                                           VerticalAlignment="Center"
                                           Visibility="{Binding Path=CanModify, Converter={StaticResource BoolToVisibility}}" />


Everything works fine when the machine's culture is set to en-US.  However, when I change my machine's culture to es-CL (Chile), the text "Enter Date" that appears in the control when it is empty does not get translated to Spanish.  I still see "Enter Date".



When a date is displayed in the control, it's in the proper format for that region.  How do I get the "Enter Date" to display in Spanish?

Kalin
Telerik team
 answered on 13 Dec 2013
1 answer
253 views
I have created my image property in my view model and can see the correct format provider is being used and populating my RadBitmap property but the binding does not work on the RadImageEditorUI control.

 

string extension = Path.GetExtension(FilePath).ToLower();
            Stream stream = File.OpenRead(FilePath);
            IImageFormatProvider formatProvider = ImageFormatProviderManager.GetFormatProviderByExtension(extension);
            if (formatProvider != null)
            {
                ImagePath = formatProvider.Import(stream);
            }
            stream.Close();
 
XAML:
<telerik:RadImageEditorUI x:Name="ImageEditorUi" Image="{Binding ImagePath}" Style="{DynamicResource ImageEditorStyle1}">

Is binding working for this control? If so, please provide a MVVM example because the documentaiton for this has no binding examples.

Petya
Telerik team
 answered on 13 Dec 2013
6 answers
199 views
Hello,

Basically I am positioning the cursor in the box mid way though a number and then just holding down backspace and I get an IndexOutOfRangeException which says "Index was outside the bounds of the array.". I do have a screencast of me creating the error if you need that.

Here is the xaml:

<telerik:RadMaskedCurrencyInput Grid.Row="5" Grid.Column="3" Value="{ Binding BgsStepBase, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged, ValidatesOnDataErrors=True, ValidatesOnExceptions=True}" Style="{ StaticResource StandardRadMaskedCurrencyInput}" Validation.ErrorTemplate="{ StaticResource RadMaskedCurrencyInputErrorTemplate}" IsClearButtonVisible="True" IsReadOnly="{Binding IsBgsFieldEnabled, Converter={StaticResource NotConverter}}" FormatString="n0" />

The bound value is decimal? (nullable decimal).

The stack trace is:

   at Telerik.Windows.Controls.RadMaskedInputBase.FindPreviousAvailablePositionNoMask() in c:\TB\135\WPF_Scrum\Release_WPF\Sources\Development\Controls\Input\MaskedInput\RadMaskedInputBase.NoMask.cs:line 209
   at Telerik.Windows.Controls.RadMaskedCurrencyInput.HandleBackKeyNoMask() in c:\TB\135\WPF_Scrum\Release_WPF\Sources\Development\Controls\Input\MaskedInput\RadMaskedCurrencyInput.NoMask.cs:line 120
   at Telerik.Windows.Controls.RadMaskedInputBase.HandleBackKey() in c:\TB\135\WPF_Scrum\Release_WPF\Sources\Development\Controls\Input\MaskedInput\RadMaskedInputBase.cs:line 2154
   at Telerik.Windows.Controls.RadMaskedInputBase.OnKeyDown(Object sender, KeyEventArgs e) in c:\TB\135\WPF_Scrum\Release_WPF\Sources\Development\Controls\Input\MaskedInput\RadMaskedInputBase.cs:line 1701
   at System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
   at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
   at System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)
   at System.Windows.UIElement.RaiseTrustedEvent(RoutedEventArgs args)
   at System.Windows.Input.InputManager.ProcessStagingArea()
   at System.Windows.Input.InputManager.ProcessInput(InputEventArgs input)
   at System.Windows.Interop.HwndKeyboardInputProvider.ReportInput(IntPtr hwnd, InputMode mode, Int32 timestamp, RawKeyboardActions actions, Int32 scanCode, Boolean isExtendedKey, Boolean isSystemKey, Int32 virtualKey)
   at System.Windows.Interop.HwndKeyboardInputProvider.ProcessKeyAction(MSG& msg, Boolean& handled)
   at System.Windows.Interop.HwndSource.CriticalTranslateAccelerator(MSG& msg, ModifierKeys modifiers)
   at System.Windows.Interop.HwndSource.OnPreprocessMessage(Object param)
   at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
   at MS.Internal.Threading.ExceptionFilterHelper.TryCatchWhen(Object source, Delegate method, Object args, Int32 numArgs, Delegate catchHandler)
   at System.Windows.Threading.Dispatcher.WrappedInvoke(Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
   at System.Windows.Threading.Dispatcher.InvokeImpl(DispatcherPriority priority, TimeSpan timeout, Delegate method, Object args, Int32 numArgs)
   at System.Windows.Interop.HwndSource.OnPreprocessMessageThunk(MSG& msg, Boolean& handled)
   at System.Windows.Interop.ComponentDispatcherThread.RaiseThreadMessage(MSG& msg)
   at System.Windows.Threading.Dispatcher.TranslateAndDispatchMessage(MSG& msg)
   at System.Windows.Threading.Dispatcher.PushFrameImpl(DispatcherFrame frame)
   at System.Windows.Application.RunInternal(Window window)
   at System.Windows.Application.Run()
   at GH.WPF.App.App.Main() in C:\DevWork\Cubit2\Dev\Features\CommonPartEnhancementV1\GH.WPF.Cubit2\obj\x86\Debug\App.g.cs:line 0
   at System.AppDomain._nExecuteAssembly(RuntimeAssembly assembly, String[] args)
   at Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly()
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean ignoreSyncCtx)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
   at System.Threading.ThreadHelper.ThreadStart()



Thanks,

Alex
Petar Mladenov
Telerik team
 answered on 13 Dec 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?