Hi Telerik forum,
I began to use the RichTextEditor to create programmatically a radDocument (so i use the paragraph, span, section object to create it).
Once the document is shown, users can insert formatted paragraph to personalize the document. The html text paragraph are stored in database in html format.
The thing i need is to be able to insert formatted html paragraph into this raddocument already generated.
My problem is to evaluate all the html text (with differents tags inside it, span, table, tr etc). I use the HtmlFormatProvider that works perfectly but it produce a new raddocument. So i tried to convert the htmlformatprovider document into a DocumentFragment, but i have to use fragment.EnumerateChildrenOfType(Of object) and explicitly specify the object type (what i wouldn't do).
What's the best approach to insert html text into an existing raddocument ?
Thanks for your help, hoping that my question is clear.
Here's my sample code :
Dim
document
As
New
RadDocument
Dim
section
As
New
Section
Dim
p9
As
New
Paragraph
Dim
presta1
As
New
RadDocument
Dim
msgHtml =
New
Html.HtmlFormatProvider
presta1 = msgHtml.Import(
"<SPAN><STRONG>Table content :</STRONG></SPAN><TABLE STYLE='border:1px solid black'><TR><TD>Marque</TD><TD>Type</TD><TD>N° série</TD><TD>Fluide</TD></TR><TR><TD>-</TD><TD>-</TD><TD>-</TD><TD>-</TD></TR><TR><TD>-</TD><TD>-</TD><TD>-</TD><TD>-</TD></TR></TABLE>"
)
Dim
fragment =
New
DocumentFragment(presta1)
section.Blocks.Add(fragment.EnumerateChildrenOfType(Of Table).ToList.First) 'its working but only with Table tag
'Saut de ligne
section.Blocks.Add(
New
Paragraph)
document.Sections.Add(section)
return document
The following sample code creates a RadRibbonBar\RibbonTab\RadRibbonBarGroup\RadSplitButtonElement UI structure.
Clicking on the radSplitButtonElement1 button causes the click handler (radSplitButtonElement1_Click) to be called twice.
Tested in R3 2017. This is not how it worked in Q1 2013, where the handler was called once.
Is this a bug or an intended change in behavior?
using System;
using System.Diagnostics;
using Telerik.WinControls.UI;
namespace wf7
{
public partial class RadForm1 : RadForm
{
public RadForm1()
{
InitializeComponent();
RadMenuItem mni1 = new RadMenuItem("item1", 1);
this.radSplitButtonElement1.Items.Add(mni1);
this.radSplitButtonElement1.DefaultItem = mni1;
mni1.Click += radSplitButtonElement1_Click;
RadMenuItem mni2 = new RadMenuItem("item2", 2);
this.radSplitButtonElement1.Items.Add(mni2);
mni2.Click += radSplitButtonElement1_Click;
}
private void radSplitButtonElement1_Click(object sender, EventArgs e)
{
Debug.Print("invoked menu item");
}
}
partial class RadForm1
{
/// <
summary
>
/// Required designer variable.
/// </
summary
>
private System.ComponentModel.IContainer components = null;
/// <
summary
>
/// Clean up any resources being used.
/// </
summary
>
/// <
param
name
=
"disposing"
>true if managed resources should be disposed; otherwise, false.</
param
>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <
summary
>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </
summary
>
private void InitializeComponent()
{
this.radRibbonBar1 = new Telerik.WinControls.UI.RadRibbonBar();
this.ribbonTab1 = new Telerik.WinControls.UI.RibbonTab();
this.radRibbonFormBehavior1 = new Telerik.WinControls.UI.RadRibbonFormBehavior();
this.radRibbonBarGroup1 = new Telerik.WinControls.UI.RadRibbonBarGroup();
this.radSplitButtonElement1 = new Telerik.WinControls.UI.RadSplitButtonElement();
((System.ComponentModel.ISupportInitialize)(this.radRibbonBar1)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this)).BeginInit();
this.SuspendLayout();
//
// radRibbonBar1
//
this.radRibbonBar1.CommandTabs.AddRange(new Telerik.WinControls.RadItem[] {
this.ribbonTab1});
//
//
//
this.radRibbonBar1.ExitButton.Text = "Exit";
this.radRibbonBar1.Location = new System.Drawing.Point(0, 0);
this.radRibbonBar1.Name = "radRibbonBar1";
//
//
//
this.radRibbonBar1.OptionsButton.Text = "Options";
this.radRibbonBar1.Size = new System.Drawing.Size(292, 162);
this.radRibbonBar1.TabIndex = 0;
this.radRibbonBar1.Text = "radRibbonBar1";
//
// ribbonTab1
//
this.ribbonTab1.IsSelected = true;
this.ribbonTab1.Items.AddRange(new Telerik.WinControls.RadItem[] {
this.radRibbonBarGroup1});
this.ribbonTab1.Name = "ribbonTab1";
this.ribbonTab1.Text = "tab1";
this.ribbonTab1.UseMnemonic = false;
//
// radRibbonFormBehavior1
//
this.radRibbonFormBehavior1.Form = this;
//
// radRibbonBarGroup1
//
this.radRibbonBarGroup1.Items.AddRange(new Telerik.WinControls.RadItem[] {
this.radSplitButtonElement1});
this.radRibbonBarGroup1.Name = "radRibbonBarGroup1";
this.radRibbonBarGroup1.Text = "radRibbonBarGroup1";
//
// radSplitButtonElement1
//
this.radSplitButtonElement1.ArrowButtonMinSize = new System.Drawing.Size(12, 12);
this.radSplitButtonElement1.DefaultItem = null;
this.radSplitButtonElement1.DropDownDirection = Telerik.WinControls.UI.RadDirection.Down;
this.radSplitButtonElement1.ExpandArrowButton = false;
this.radSplitButtonElement1.Name = "radSplitButtonElement1";
this.radSplitButtonElement1.Text = "radSplitButtonElement1";
this.radSplitButtonElement1.Click += new System.EventHandler(this.radSplitButtonElement1_Click);
//
// RadForm1
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(292, 270);
this.Controls.Add(this.radRibbonBar1);
this.FormBehavior = this.radRibbonFormBehavior1;
this.IconScaling = Telerik.WinControls.Enumerations.ImageScaling.None;
this.Name = "RadForm1";
//
//
//
this.RootElement.ApplyShapeToControl = true;
this.Text = "radRibbonBar1";
((System.ComponentModel.ISupportInitialize)(this.radRibbonBar1)).EndInit();
((System.ComponentModel.ISupportInitialize)(this)).EndInit();
this.ResumeLayout(false);
this.PerformLayout();
}
#endregion
private RadRibbonBar radRibbonBar1;
private RadRibbonFormBehavior radRibbonFormBehavior1;
private RibbonTab ribbonTab1;
private RadRibbonBarGroup radRibbonBarGroup1;
private RadSplitButtonElement radSplitButtonElement1;
}
}
ddd
Hi, I am using version 17.2.502.0 in which I have encountered a problem with the radlistview control in its views (iconview, listview, detailsview), in my case I am using it with iconview; the problem is specifically that sometimes does not select the item when you click and you have to press up to 4 times to select an item this asu prevents the itemmouseclick event from performing correctly.
I hope your support, thank you.
note: I'm using the google translator, apologies from the case.
Private
Sub
CargarArtistas(
ByVal
lw
As
RadListView)
Try
lw.ItemSize =
New
Size(180, 180)
lw.AllowArbitraryItemHeight =
True
lw.ItemSpacing = 3
lw.EnableKineticScrolling =
True
lw.ListViewElement.ViewElement.ViewElement.Margin =
New
Padding(3, 3, 3, 3)
lw.ListViewElement.ViewElement.Orientation = Orientation.Horizontal
'lw.ListViewElement.DrawFill = False
Me
.Listar_VideoTableAdapter.Fill(
Me
.DsArtistas.Listar_Video, Genero_Predeterminado,
"VIDEO"
)
lw.DataSource =
Me
.ListarVideoBindingSource
lw.DisplayMember =
"Artista"
'lw.EnableSorting = True
'Dim sort As New SortDescriptor("Artista", ListSortDirection.Ascending)
'lw.SortDescriptors.Add(sort)
Catch
ex
As
Exception
MsgBox(ex.Message, MsgBoxStyle.Critical, MsgboxTitle)
End
Try
End
Sub
Private
Sub
Frm_Testeo_Load(sender
As
Object
, e
As
EventArgs)
Handles
MyBase
.Load
Try
CargarArtistas(lwVideo)
ThemeResolutionService.LoadPackageFile(Application.StartupPath &
"\Themes\CSI_THEME_LW.tssp"
)
lwVideo.ThemeName =
"CSI_THEME_LW"
Catch
ex
As
Exception
MsgBox(ex.Message, MsgBoxStyle.Critical, MsgboxTitle)
End
Try
End
Sub
Private
Sub
lwVideo_ItemDataBound(sender
As
Object
, e
As
ListViewItemEventArgs)
Handles
lwVideo.ItemDataBound
Try
Dim
rowView
As
DataRowView = TryCast(e.Item.DataBoundItem, DataRowView)
Dim
icon
As
Image
icon = Image.FromFile(rowView.Row(
"Foto"
))
e.Item.Image = icon.GetThumbnailImage(180, 180,
Nothing
, IntPtr.Zero)
Catch
ex
As
Exception
MsgBox(ex.Message, MsgBoxStyle.Critical)
End
Try
End
Sub
Private
Sub
Show_FormArtistas(
ByVal
lw
As
RadListView)
Try
Codigo_Genero_Seleccionado = TryCast(lw.SelectedItem.Item(
"CodGenero"
).ToString,
String
)
Genero_Seleccionado = TryCast(lw.SelectedItem.Item(
"Genero"
).ToString,
String
)
Artista_Seleccionado = TryCast(lw.SelectedItem.Item(
"Artista"
).ToString,
String
)
Foto_Seleccionado = TryCast(lw.SelectedItem.Item(
"Foto"
).ToString,
String
)
Formato_Seleccionado = TryCast(lw.SelectedItem.Item(
"Tipo"
).ToString,
String
)
Formulario =
"Artistas"
Dim
oFrm_Gray
As
New
Frm_Gray
oFrm_Gray.BackColor = Color.FromArgb(BackColor_GUI)
oFrm_Gray.Opacity = 0.5
oFrm_Gray.ShowDialog()
Catch
ex
As
Exception
MsgBox(ex.Message, MsgBoxStyle.Critical, MsgboxTitle)
End
Try
End
Sub
Private
Sub
lwVideo_ItemMouseClick(sender
As
Object
, e
As
ListViewItemEventArgs)
Handles
lwVideo.ItemMouseClick
Try
Show_FormArtistas(lwVideo)
Catch
ex
As
Exception
MsgBox(ex.Message, MsgBoxStyle.Critical, MsgboxTitle)
End
Try
End
Sub
Private
Sub
lwVideo_VisualItemCreating(sender
As
Object
, e
As
ListViewVisualItemCreatingEventArgs)
Handles
lwVideo.VisualItemCreating
Try
e.VisualItem =
New
CustomVisualItem
Catch
ex
As
Exception
MsgBox(ex.Message, MsgBoxStyle.Critical, MsgboxTitle)
End
Try
End
Sub
I have a gantt view that I want to populate with data, but when i set it to the day range the the major timeline grid sizing seems to scale to the size of the container rather than to the secondary time line grid (see attached picture). The gantt view items are properly scaled to the major grid, but the secondary timeline markings are wrong. Is there a setting that i can use to make the major timeline grid marks stretch over all the available secondary timeline markings?
This is running on windows 10, telerik ui for winforms 2016 R3.
To replicate the issue create a new project with a gantview and use the following code in the load function.
RadGanttView1.GanttViewElement.GraphicalViewElement.TimelineRange = Telerik.WinControls.UI.TimeRange.Day
RadGanttView1.GanttViewElement.GraphicalViewElement.TimelineStart = Today
RadGanttView1.GanttViewElement.GraphicalViewElement.TimelineEnd = Today.AddHours(24)
Dim tasks As New DataTable("Tasks")
tasks.Columns.Add("Id", GetType(Integer))
tasks.Columns.Add("ParentId", GetType(Integer))
tasks.Columns.Add("Title", GetType(String))
tasks.Columns.Add("Start", GetType(DateTime))
tasks.Columns.Add("End", GetType(DateTime))
tasks.Columns.Add("Progress", GetType(Decimal))
Dim links As New DataTable("Links")
links.Columns.Add("StartId", GetType(Integer))
links.Columns.Add("EndId", GetType(Integer))
links.Columns.Add("LinkType", GetType(Integer))
Dim data As New DataSet()
data.Tables.Add(tasks)
data.Tables.Add(links)
tasks.Rows.Add(1, 0, "Summary task title", Today.AddHours(11), Today.AddHours(12), 30D)
tasks.Rows.Add(2, 1, "First child task title", Today.AddHours(11), Today.AddHours(11.5), 10)
tasks.Rows.Add(3, 1, "Second child task title", Today.AddHours(11.5), Today.AddHours(12), 20D)
tasks.Rows.Add(4, 1, "Milestone", Today.AddHours(12), Today.AddHours(12), 0D)
links.Rows.Add(2, 3, 1)
links.Rows.Add(3, 4, 1)
Me.RadGanttView1.GanttViewElement.TaskDataMember = "Tasks"
Me.RadGanttView1.GanttViewElement.ChildMember = "Id"
Me.RadGanttView1.GanttViewElement.ParentMember = "ParentId"
Me.RadGanttView1.GanttViewElement.TitleMember = "Title"
Me.RadGanttView1.GanttViewElement.StartMember = "Start"
Me.RadGanttView1.GanttViewElement.EndMember = "End"
Me.RadGanttView1.GanttViewElement.ProgressMember = "Progress"
Me.RadGanttView1.GanttViewElement.LinkDataMember = "Links"
Me.RadGanttView1.GanttViewElement.LinkStartMember = "StartId"
Me.RadGanttView1.GanttViewElement.LinkEndMember = "EndId"
Me.RadGanttView1.GanttViewElement.LinkTypeMember = "LinkType"
Me.RadGanttView1.GanttViewElement.DataSource = data
Me.RadGanttView1.Columns.Add("Start")
Me.RadGanttView1.Columns.Add("End")
public
partial
class
SettingsManager : UserControl
{
public
SettingsManager()
{
InitializeComponent();
_propertyStore = CreateProperties();
radPropertyGrid1.SelectedObject = _propertyStore;
radPropertyGrid1.PropertySort = PropertySort.CategorizedAlphabetical;
}
private
RadPropertyStore _propertyStore;
private
PropertyStoreItem _defaultSaveDirectory;
private
RadPropertyStore CreateProperties()
{
var result =
new
RadPropertyStore();
_defaultSaveDirectory =
new
PropertyStoreItem(
typeof
(
string
),
"DefaultSaveFolder"
,
Properties.Settings.Default.DefaultSaveFolderPath,
"Default directory for saving snapshot and configuration files."
,
"Save Snapshot/Configuration"
,
false
);
_defaultSaveDirectory.PropertyChanged += OnDefaultSaveDirectoryChanged;
result.Add(_defaultSaveDirectory);
return
result;
}
void
OnDefaultSaveDirectoryChanged(
object
sender, System.ComponentModel.PropertyChangedEventArgs e)
{
var folderDialog =
new
FolderBrowserDialog {
Description = Resources.DefaultLocationDialogHelp,
ShowNewFolderButton =
true
};
if
(DialogResult.OK == folderDialog.ShowDialog())
{
_defaultSaveDirectory.PropertyChanged -= OnDefaultSaveDirectoryChanged;
_defaultSaveDirectory.Value = folderDialog.SelectedPath;
_defaultSaveDirectory.PropertyChanged += OnDefaultSaveDirectoryChanged;
Properties.Settings.Default.DefaultSaveFolderPath = folderDialog.SelectedPath;
}
}
}
Hi sir/Madam,
I am a programmer evaluating the raddock
Created the form and add raddock control.
I hv created one text box in right side tool window.
I hv a radform as a document in the dock container.
I need to access the tool window text box and pass the value to the text box from the
document form.
I am unable to access the text box control which is resided in the tool window of raddock.
Please help me for the above.
Regards
It's really not that complicated to manually remove "mask" characters from a string but I was curious if this control already has this ability built in?
Here's an example:
assume ctrl = RadMaskedEditBox
ctrl.Mask = "00000-9999"
ctrl.Text = "_____-____"
ctrl.MaskType = Standard
If the user gets to this input box and types in "12345" and I check ctrl.Value I get this: "12345-____" when what I really want is "12345"
If I'm missing something, please advise otherwise, i'll just grunt my way through it :)
Thanks everyone!!!
-Curtis