Telerik Forums
UI for WinForms Forum
1 answer
496 views

I have been populating my treeviews programmatically but would like to change to binding.

I read data from db and build a data model. I'd like to bind the data model to my treeview. so that when collections of objects and objects' properties themselves change they should automatically update in the treeview.

Which binding method would be the best way to achieve this? I've attached a simple mockup diagram to show the hierarchical structure. (Node types are abbreviated and I've removed the N level shown in the diagram from the code, as it doesn't really add to my question). The first part shows the model, and below shows some sample data.

I did a quick test like below which works, but doesn't allow for the collection of Table objects in Form (sibling to the Elements collection) to be populated. I hope this makes sense.

// pseudocode         
class DataModel { public List<Form> forms; }
class Form { public string Name { get; set;} public List<Element> Elements; public List<Table> Tables; }
class Element { public string Name { get; set;} }
class Column { public string Name { get; set;} }
class Table { public string Name { get; set;} public List<Column> Columns; }
            
// not showing creation of data model; see diagram for structure

// var DataModel sampleData;

_view.DataSource = new BindingList<Form>(sampleData.forms);
_view.DisplayMember = "Name\\Name";
_view.ChildMember = "Forms\\Elements";

 

As a side question, I'd like to have the T objects and the F objects (for example) in their own visual 'folder' in the treeview. Can this be still achieved with data binding, or should I stick my manual population method (which has lots of overhead trying to keep data model and tree view in synch with events, etc.).

 

 

Dess | Tech Support Engineer, Principal
Telerik team
 answered on 07 May 2018
2 answers
96 views
I connected the database to the "CardView".
I made the changes in the "CardView" field.

How can I make changes saved in the database?
Dess | Tech Support Engineer, Principal
Telerik team
 answered on 07 May 2018
2 answers
195 views

What is the scope of setting RadGridLocalizationProvider please?

When setting it, it doesn't seem to be assigned to anything eg a particular window. So I'm a bit confused whether it should be set once on startup or if it should be set per form.

On the surface the function "CurrentProvider" appears to be setting.a static variable somewhere, so does the function add the new instance to a list? or does it override a single instance and need resetting after a child form is disposed?

Sorry if this seems like a dumb question.

  public class GeneralRadGridLocalizationProvider : RadGridLocalizationProvider
  {
    public override string GetLocalizedString(string id)
    {
      switch (id)
      {
        case RadGridStringId.ConditionalFormattingPleaseSetValidCellValue: return GuiResources.Please_set_a_valid_cell_value;
//foo bar the remaining ids
        case RadGridStringId.ExpressionFormNotButton: return string.Empty; //if empty, default button image is used
      }
      return string.Empty;
    }
  }// class
 
public function FooBar()
{
  RadGridLocalizationProvider.CurrentProvider = new GeneralRadGridLocalizationProvider();
}

Czeshirecat
Top achievements
Rank 2
Iron
Iron
Iron
 answered on 04 May 2018
1 answer
76 views

Hi,

 

is it possible to color only the expanded row header?

See image.

What type has this cell?

 

Dess | Tech Support Engineer, Principal
Telerik team
 answered on 04 May 2018
1 answer
120 views

Hello, 

I have some problems when I try to deserialize custom objects which implements RadDiagramShape.

I have implemented a custom shape :

public class MyShape : ElementShape
{
    public override GraphicsPath CreatePath(System.Drawing.Rectangle bounds)
    {
        GraphicsPath path = new GraphicsPath();
        path.AddString("Custom", new System.Drawing.FontFamily("Arial"), 0, bounds.Width, Point.Empty, StringFormat.GenericTypographic);
        return path;
    }
}

And a custom diagramShape :

public sealed class MyDiagramShape : RadDiagramShape
    {
        public MyDiagramShape()
        {
            ShapeText = "";
            ElementShape = new MyShape();
            InternalElementColor = System.Drawing.Color.LightBlue;
        }
    }
 

I add this custom shape to my diagram:

MyDiagramShape diagramShape = new MyDiagramShape();
diagramShape.Position = new Telerik.Windows.Diagrams.Core.Point(100, 80);
radDiagram1.AddShape(diagramShape);
 

This works fine, and when I serialize, I get a XML like this: 

<RadDiagram>
 <Shapes>
  <MyDiagramShape Type="WindowsFormsApplicationCustomShape.MyDiagramShape"
 </Shapes>
</RadDiagram>

 

Problems come when I try to load this XML, object instanciated are typed as RadDiagramShape and not MyDiagramShape.

When I serialize again, the structure of the XML is like this :

<RadDiagram>
<Shapes>
  <RadDiagramShape Type="Telerik.WinControls.UI.RadDiagramShape"
</Shapes>
</RadDiagram>

 

I don't know if it's possible to instanciate objects with their derived type like specified in the XML ?

Thanks in advance

florian
Top achievements
Rank 1
 answered on 04 May 2018
0 answers
60 views

How to make an HTML format appear in the CardView field?

 

Rich
Top achievements
Rank 1
 asked on 03 May 2018
3 answers
1.2K+ views
Hello,

I'll try and explain what I'm after. I have a multiline RadTextBox, (takes about 7 lines of text). I dont want to show scroll bars as I start to type. When the text gets to the 8th line either via enter or wordwrap to make the vertical scroll bar appear.

I can do this with a RichTextbox but need to use a RadTextBox

Is this possible?

I have tried using the .lines property but that doesn't increment when using word wrap.

Any help much appreciated.

Terry


Dimitar
Telerik team
 answered on 03 May 2018
1 answer
329 views
I can't see how to set the main icon of the application. i.e. what is seen when the app is minimized to the taskbar and also when installing from clickonce publishing.
Dess | Tech Support Engineer, Principal
Telerik team
 answered on 03 May 2018
1 answer
108 views

Hello, 

I would like to implement a custom connection content, depending on the size of the connection.

Basically, I would like to display the distance between the 2 Shapes that are linked by the connection.

I have tried to play with  OnConnectionManipulationCompleted event, and I'm able to display that info at the creation of the connection, but it's never refreshed.

Do you know how if I can refresh that info while I'm dragging a shape ?

Thanks

florian
Top achievements
Rank 1
 answered on 03 May 2018
2 answers
119 views

Hello,

I'm creating a DataFilter showing a premade expression and not allowing to Add or Remove other expressions or groups.

I'd like also to disable the possiblity to click on a field and change it, I want to keep them fixed.

I've seen the AllowEdit property, but it's too drastic, since it does not allow even to change the value to look for.

Where should I look?

Thank you!

Andrea
Top achievements
Rank 1
 answered on 02 May 2018
Narrow your results
Selected tags
Tags
GridView
General Discussions
Scheduler and Reminder
Treeview
Dock
RibbonBar
Themes and Visual Style Builder
ChartView
Calendar, DateTimePicker, TimePicker and Clock
DropDownList
Buttons, RadioButton, CheckBox, etc
ListView
ComboBox and ListBox (obsolete as of Q2 2010)
Form
Chart (obsolete as of Q1 2013)
PageView
MultiColumn ComboBox
TextBox
RichTextEditor
PropertyGrid
Menu
RichTextBox (obsolete as of Q3 2014 SP1)
Panelbar (obsolete as of Q2 2010)
PivotGrid and PivotFieldList
Tabstrip (obsolete as of Q2 2010)
MaskedEditBox
CommandBar
PdfViewer and PdfViewerNavigator
ListControl
Carousel
GanttView
Diagram, DiagramRibbonBar, DiagramToolBox
Panorama
New Product Suggestions
VirtualGrid
Toolstrip (obsolete as of Q3 2010)
AutoCompleteBox
Label
Spreadsheet
ContextMenu
Panel
Visual Studio Extensions
TitleBar
Documentation
SplitContainer
Map
DesktopAlert
CheckedDropDownList
ProgressBar
TrackBar
MessageBox
Rotator
SpinEditor
CheckedListBox
StatusStrip
LayoutControl
SyntaxEditor
Wizard
ShapedForm
TextBoxControl
CollapsiblePanel
Conversational UI, Chat
DateTimePicker
TabbedForm
CAB Enabling Kit
GroupBox
WaitingBar
DataEntry
ScrollablePanel
ScrollBar
ImageEditor
Tools - VSB, Control Spy, Shape Editor
BrowseEditor
DataFilter
FileDialogs
ColorDialog
Gauges (RadialGauge, LinearGauge, BulletGraph)
ApplicationMenu
RangeSelector
CardView
WebCam
BindingNavigator
Styling
Barcode
PopupEditor
RibbonForm
TaskBoard
Callout
NavigationView
ColorBox
PictureBox
FilterView
Accessibility
VirtualKeyboard
DataLayout
Licensing
ToastNotificationManager
ValidationProvider
CalculatorDropDown
Localization
TimePicker
BreadCrumb
ButtonTextBox
FontDropDownList
BarcodeView
Security
LocalizationProvider
Dictionary
SplashScreen
Overlay
Flyout
Separator
SparkLine
TreeMap
StepProgressBar
ToolbarForm
NotifyIcon
DateOnlyPicker
AI Coding Assistant
Rating
TimeSpanPicker
Calculator
OfficeNavigationBar
TaskbarButton
HeatMap
SlideView
PipsPager
AIPrompt
TaskDialog
TimeOnlyPicker
+? more
Top users last month
Rob
Top achievements
Rank 3
Bronze
Bronze
Iron
Sergii
Top achievements
Rank 1
Iron
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
Bronze
Iron
Sergii
Top achievements
Rank 1
Iron
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?