I am attempting to add a RadSyntaxEditorElement to Telerik Chat UI for Winforms using 2023.3.1010 Trial.
I receive a null reference exception in RadSyntaxEditorElement.cs > SyncZoomComboText line 1312. It says base.Dispatcher = null. (see attached image).
Is it possible to add the SyntaxEditorElement to chat? If, not do you have any other recommendations for display code in chat?
Here is my test code modified from the examples found on your site.
public class MyCodeMessageItemElement : TextMessageItemElement
{
protected override Type ThemeEffectiveType
{
get
{
return typeof(TextMessageItemElement);
}
}
protected override LightVisualElement CreateMainMessageElement()
{
return new CustomCodeMessageBubbleElement();
}
public override void Synchronize()
{
base.Synchronize();
CustomCodeMessageBubbleElement bubble = this.MainMessageElement as CustomCodeMessageBubbleElement;
bubble.DrawText = false;
}
}
public class CustomCodeMessageBubbleElement : ChatMessageBubbleElement
{
protected override Type ThemeEffectiveType
{
get
{
return typeof(ChatMessageBubbleElement);
}
}
//RadTextBoxControlElement textBoxElement;
RadSyntaxEditor radSyntaxEditor;
RadSyntaxEditorElement radSyntaxEditorElement;
public RadSyntaxEditor SyntaxEditor1
{
get
{
return this.radSyntaxEditor;
}
}
protected override void CreateChildElements()
{
base.CreateChildElements();
radSyntaxEditorElement = new RadSyntaxEditorElement();
radSyntaxEditorElement.ZoomComboBox.Enabled = false;
//radSyntaxEditor.ContextMenuOpening += textBoxElement_ContextMenuOpening;
this.Children.Add(radSyntaxEditorElement);
}
//private void textBoxElement_ContextMenuOpening(object sender, TreeBoxContextMenuOpeningEventArgs e)
//{
// foreach (RadItem item in e.ContextMenu.Items)
// {
// if (item.Text.Contains("&Copy"))
// {
// item.Visibility = ElementVisibility.Visible;
// }
// else
// {
// item.Visibility = ElementVisibility.Collapsed;
// }
// }
//}
public override string Text
{
get
{
return base.Text;
}
set
{
base.Text = value;
this.radSyntaxEditor.Text = value;
}
}
}


Hi, new to telerik, we're evaluating rad chat for an internal chat piece to our app.
i'm looking for recommendations for what control to pair with the radchat control for the left side of the chat program. the one where you pick who you're talking to currently. think any old messenger app, conversations on the left, and the main chat with a person on the right.
what would you guys use for that? I only need it to show the person's name, the person that's selected and something like a dot or overlay showing conversations you haven't seen yet. Like XYZ sent you a chat and you haven't looked at it yet so XYZ's entry shows a dot etc for a missed chat.
this is all winforms.
Thanks!

Hello!
I'm struggeling tracking move actions via the DragStarting, DragEnding & DragEnded event of the RadTreeView control.
The informatin provided by the event args are nearly impossible to use, as they are inconsitent as it looks like. Probably I just miss something, but that's why I'm writing this here. :)
What I need:
I need to check if the previous Node in the previous parent can be dropped to the new parent at the new position. This is a more complex check I can't explain in detail, but to clarify: I need ...
Current limits
I can't get all those infos at the DragEnding nor in the DragEnded event. At the moment:
What I do now is not well done:
My question
Is there any way to either track down the accurate new parent and the new index of the node in the new parent on the DragEnding event? I need to know them to cancel the drag event if the action is not allow and very specific cases.
Thank you in advance for an answer! We hope to get a solution soon. I already spend a lot of hours (several days) to this issue without a good solution.
This might also be a support ticket, but maybe someone of the community have a similar issue or already have a workaround/solution for it.
Code sample of a current implementation:
private void RadTreeView_BgrTree_DragStarting(object sender, RadTreeViewDragCancelEventArgs e)
{
if (e.Node is not null)
{
oldNodeIndex = e.Node.Index;
oldNodeParent = CheckForRootNode(e.Node.Parent);
}
}
private void RadTreeView_BgrTree_DragEnding(object sender, RadTreeViewDragCancelEventArgs e)
{
IMatrixTarget draggingTarget = e.Node?.Tag as IMatrixTarget;
Entility newParentEntility = null;
int indexToInsert = 0;
void insertInSameParent(int offset)
{
if (e.TargetNode.Parent is not null)
newParentEntility = CheckForRootNode(e.TargetNode.Parent)?.Tag as Entility;
indexToInsert = e.TargetNode.Index + offset;
};
void insertAsChild(int offset)
{
if (e.TargetNode is not null)
newParentEntility = CheckForRootNode(e.TargetNode)?.Tag as Entility;
indexToInsert = newParentEntility.Childs.Count;
};
switch (e.DropPosition)
{
case DropPosition.BeforeNode:
insertInSameParent(0);
break;
case DropPosition.AfterNode:
{
if (ReferenceEquals(e.TargetNode.Parent, e.Node.Parent))
{
if (draggingTarget is Entility draggingEntility && draggingEntility.Index > e.TargetNode.Index)
insertInSameParent(0);
else
insertInSameParent(-1);
}
else if (draggingTarget is Entility && ReferenceEquals(((Entility)draggingTarget).Parent, e.TargetNode.Tag))
insertAsChild(-1);
else
insertAsChild(0);
break;
}
case DropPosition.AsChildNode:
insertAsChild(0);
break;
}
if (newParentEntility is not null)
{
try
{
if (draggingTarget is Einfluss)
Controller.MoveIMatrixTarget(draggingTarget, indexToInsert);
else if (draggingTarget is Entility entility)
Controller.SetNewEntilityParent(newParentEntility, new[] { entility }, indexToInsert, false, false);
}
catch (Exception)
{
e.Cancel = true;
}
}
}
Hi,
We are using RadContextMenu (winforms).
It works fine.
But we would like to remove/hide the icon column because in most cases our items don't have icon/image.
Do you know if it is possible ?
Thanks.
Alain.

Hi,
Actually we have made Custom Summary Item for displaying helper text. But we are facing one issue we are displaying helper text in a summary row but that text got truncated from last (i.e. last few characters are missing when displayed).Please have look on below image to have good understanding of issue.
I am providing you the code which we have used. If you need any more information. Please let me know
Code:
Method to set summary row text
private void SetHelpText(string strHelpText)
{
if (this.SummaryRowsTop.Count == 0)
{
CustomSummaryStatusItem summaryItem = new CustomSummaryStatusItem(this.MasterTemplate.Columns[0].Name, strHelpText + "", GridAggregateFunction.Count);
GridViewSummaryRowItem summaryRowItem = new GridViewSummaryRowItem();
// Used to set cell value in GrdData_ViewCellFormatting
summaryItem.Name = "StatusText|" + strHelpText;
summaryRowItem.Add(summaryItem);
this.SummaryRowsTop.Add(summaryRowItem);
}
else
{
var summaryRowTop = this.SummaryRowsTop[0];
var summaryItem = summaryRowTop[0] as GridViewSummaryItem;
summaryItem.Name = "StatusText|" + strHelpText;
}
var summaryRowIndex = this.MasterView.SummaryRows.IndexOf(this.SummaryRowsTop[0]);
this.MasterView.SummaryRows[summaryRowIndex].PinPosition = PinnedRowPosition.Top;
this.MasterView.SummaryRows[summaryRowIndex].IsVisible = true;
this.MasterView.SummaryRows[0].PinPosition = PinnedRowPosition.Bottom;
this.MasterTemplate.BottomPinnedRowsMode = GridViewBottomPinnedRowsMode.Fixed;
}
Custom Summary Item:
public class CustomSummaryStatusItem : GridViewSummaryItem
{
public CustomSummaryStatusItem(string name, string formatString, GridAggregateFunction aggregate)
: base(name, formatString, aggregate)
{ }
public override object Evaluate(IHierarchicalRow row)
{
return 1;
}
}
Below Attached Image will help you to know more about issue. Please have a look on them.
Actual Text Dispalyed
Expected Text To DisplayThanks,
Shubham Jain

Is there a way to call the Telerik 'insert chart' dialog for a RadSpreadsheet?
I don't want to include the whole ribbon bar, as it has lots of options which would make a mess of my data if a user tried to use it, but I'd REALLY like to let them to be able to add charts.
Otherwise, ss I had to do with the find/replace dialog, I'll have to replciate your UI, which is silly.

Is there a way we can put the record count in each group title after grouping on a column in the Grid after the user drags the column to the GROUP BY row?
See exmple
TIA.

