Example #1
0
        void UpdateDescription()
        {
            if (descriptionRichTextBox == null)
            {
                return;
            }
            BlockCollection blocks =
                descriptionRichTextBox.Document.Blocks;

            if (treeListView.FocusedRowHandle == GridControl.InvalidRowHandle)
            {
                return;
            }
            string newDescription = list.FieldDescriptions[treeListView.FocusedRowHandle].TemplateName + "Description";

            if (newDescription == lastDescription)
            {
                return;
            }
            lastDescription = newDescription;
            ContentControl control = new ContentControl()
            {
                Template = Resources[newDescription] as ControlTemplate
            };

            control.ApplyTemplate();
            ParagraphContainer container = VisualTreeHelper.GetChild(control, 0) as ParagraphContainer;

            blocks.Clear();
            blocks.Add(container.Paragraph);
        }
Example #2
0
        static void DescriptionChanged(DependencyObject d, DependencyPropertyChangedEventArgs e)
        {
            var rtb = d as RichTextBox;

            if (rtb == null || rtb.Document == null)
            {
                return;
            }
            rtb.Document.Blocks.Clear();
            var property = e.NewValue as PropertyDescriptor;

            if (property == null)
            {
                return;
            }
            ContentControl control = new ContentControl()
            {
                Template = rtb.FindResource(DynamicallyAssignDataEditorsTemplateSelector.GetTemplateName(property) + "Description") as ControlTemplate
            };

            control.ApplyTemplate();
            ParagraphContainer container = VisualTreeHelper.GetChild(control, 0) as ParagraphContainer;

            rtb.Document.Blocks.Add(container.Paragraph);
        }