or
Hi,
It is somehow possible to display/edit an EntityCollection of entities?
My entity looks like that:
public partial class Property : EntityObject {.... public string Name {set;get} public string Description {set;get} public string Value{set;get} public string RegExValidationString{set;get} } And I want to be able to edit a collection, each object in the collection to be displayed as an row in the PropertyGrid:
EntityCollection<Property> entityCollection = new EntityCollection<Property>(); entityCollection.Add(new Property() { Name = "test1", Description = "test1 description", Value = "111" }); entityCollection.Add(new Property() { Name = "test2", Description = "test2222 description", Value = "lallla" });
foreach (Property p in entityCollection) { PropertyDefinition pd = new PropertyDefinition() { Binding = new Binding { Source = p.Value }, DisplayName = p.Name, Description = p.Description }; radPropertyGrid.PropertyDefinitions.Add(pd); }<telerik:RadDataForm CurrentItem="{Binding CurrentItem,ElementName=RadGridView1}"
no luck so far. Any simple solution to this ?
thankyou
//Focus RichTextBox - I have made my own Intellisense ListBox radRichTextBox.Focus(); //Get Caret position (start position) DocumentPosition startPosition = new DocumentPosition(radRichTextBox.Document); //Insert text into document at caret position - text is from Intellisense ListBox selected item radRichTextBox.Document.Insert(((Products)radListBox.SelectedItem).Name + ": ", radRichTextBox.Document.Style); //Get caret position now text has been inserted (end position) DocumentPosition endPosition = new DocumentPosition(this.radRichTextBox.Document); //Adjust position of Intellisense ListBox to new Caret position AdjustAutoCompletePosition(); //Reload Intellisense ListBox with new items based on previous selection SetAutoCompleteListBoxItems(((Products)radListBox.SelectedItem).ID); //Set Custom Annotation SemanticRangeEnd rangeEnd = new SemanticRangeEnd(); SemanticRangeStart rangeStart = (SemanticRangeStart)rangeEnd.CreatePairedStart(); rangeStart.Name = "SemanticRange " + count++; //Place annotation around newly inserted text - note start & end position radRichTextBox.Document.InsertCustomAnnotationRange(startPosition, endPosition, rangeStart, rangeEnd);<t:Paragraph> <custom1:SemanticRangeStart AnnotationID="1" Name="SemanticRange 0" /> <t:Span FontFamily="Verdana" FontSize="16" FontStyle="Normal" FontWeight="Normal" Text="Appliances: " /> <custom1:SemanticRangeEnd AnnotationID="1" /></t:Paragraph><t:Paragraph> <custom1:SemanticRangeStart AnnotationID="1" Name="SemanticRange 1" /> <custom1:SemanticRangeEnd AnnotationID="1" /> <custom1:SemanticRangeStart AnnotationID="2" Name="SemanticRange 0" /> <t:Span FontFamily="Verdana" FontSize="16" FontStyle="Normal" FontWeight="Normal" Text="Appliances: " /> <custom1:SemanticRangeEnd AnnotationID="2" /> <t:Span FontFamily="Verdana" FontSize="16" FontStyle="Normal" FontWeight="Normal" Text="Hob: " /></t:Paragraph><t:Paragraph> <custom1:SemanticRangeStart AnnotationID="2" Name="SemanticRange 0" /> <t:Span FontFamily="Verdana" FontSize="16" FontStyle="Normal" FontWeight="Normal" Text="Appliances: " /> <custom1:SemanticRangeEnd AnnotationID="2" /><custom1:SemanticRangeStart AnnotationID="1" Name="SemanticRange 1" /> <t:Span FontFamily="Verdana" FontSize="16" FontStyle="Normal" FontWeight="Normal" Text="Hob: " /><custom1:SemanticRangeEnd AnnotationID="1" /> </t:Paragraph>
Thank you for your time,
Rob
//Get caret position (start)DocumentPosition startPosition = this.radRichTextBox.Document.CaretPosition;//Insert text into document at caret position - text is from Intellisense ListBox selected itemradRichTextBox.Document.Insert(((Products)radListBox.SelectedItem).Name + ": ", radRichTextBox.Document.Style);//Get caret position now text has been inserted (end of text)DocumentPosition endPosition = this.radRichTextBox.Document.CaretPosition;<t:Paragraph> <t:Span FontFamily="Verdana" FontSize="16" FontStyle="Normal" FontWeight="Normal" Text="Appliances: " /> <custom1:SemanticRangeStart AnnotationID="1" Name="SemanticRange 0" /> <custom1:SemanticRangeEnd AnnotationID="1" /> <t:Span FontFamily="Verdana" FontSize="16" FontStyle="Normal" FontWeight="Normal" Text="Hob: " /> <custom1:SemanticRangeStart AnnotationID="2" Name="SemanticRange 1" /> <custom1:SemanticRangeEnd AnnotationID="2" /> <t:Span FontFamily="Verdana" FontSize="16" FontStyle="Normal" FontWeight="Normal" Text="Electric: " /> <custom1:SemanticRangeStart AnnotationID="3" Name="SemanticRange 2" /> <custom1:SemanticRangeEnd AnnotationID="3" /> <t:Span FontFamily="Verdana" FontSize="16" FontStyle="Normal" FontWeight="Normal" Text="Beko HIC64102" /></t:Paragraph>public override bool SkipPositionBefore{ get { return true; }}public override bool IsCopyable{ get { return true; }}public override AnnotationMarkerDeleteBehavior BackspaceBehavior{ get { return AnnotationMarkerDeleteBehavior.SelectAnnotation; }}public override bool SkipPositionBefore{ get { return true; }}public override bool IsCopyable{ get { return true; }}public override bool SkipPositionsInRange{ get { return true; }}<t:Paragraph> <custom1:SemanticRangeStart AnnotationID="1" Name="SemanticRange 0" /> <t:Span FontFamily="Segoe UI" FontSize="14" FontStyle="Normal" FontWeight="Normal" Text="Appliances: " /> <custom1:SemanticRangeEnd AnnotationID="1" /> <custom1:SemanticRangeStart AnnotationID="2" Name="SemanticRange 1" /> <t:Span FontFamily="Segoe UI" FontSize="14" FontStyle="Normal" FontWeight="Normal" Text="Dishwasher" /> <custom1:SemanticRangeEnd AnnotationID="2" /></t:Paragraph>