Not finding any examples or similar, so I wanted to see if there is a way to include a Gantt Chart into a WordsProcessing document. I am currently bringing the data into a table, but my end-user has requested to see the chart view of the same data.
if (JobMilestones.Count > 0) { editor.InsertText("MILESTONES").FontWeight = FontWeights.Bold; Table tblMilestone = editor.InsertTable(JobMilestones.Count + 1, 3); tblMilestone.PreferredWidth = new TableWidthUnit(720); Paragraph p = tblMilestone.Rows[0].Cells[0].Blocks.AddParagraph(); tblMilestone.Rows[0].RepeatOnEveryPage = true; tblMilestone.Rows[0].Cells[0].Borders = tcb; tblMilestone.Rows[0].Cells[1].Borders = tcb; tblMilestone.Rows[0].Cells[2].Borders = tcb; editor.MoveToParagraphStart(p); editor.InsertText("Task").FontWeight = FontWeights.Bold; p = tblMilestone.Rows[0].Cells[1].Blocks.AddParagraph(); editor.MoveToParagraphStart(p); editor.InsertText("Start").FontWeight = FontWeights.Bold; p = tblMilestone.Rows[0].Cells[2].Blocks.AddParagraph(); editor.MoveToParagraphStart(p); editor.InsertText("End").FontWeight = FontWeights.Bold; int x = 1; foreach (FlatModel fm in JobMilestones) { p = tblMilestone.Rows[x].Cells[0].Blocks.AddParagraph(); editor.MoveToParagraphStart(p); editor.InsertText(fm.TaskTitle); p = tblMilestone.Rows[x].Cells[1].Blocks.AddParagraph(); editor.MoveToParagraphStart(p); editor.InsertText(fm.StartDate.ToShortDateString()); p = tblMilestone.Rows[x].Cells[2].Blocks.AddParagraph(); editor.MoveToParagraphStart(p); editor.InsertText(fm.EndDate.ToShortDateString()); tblMilestone.Rows[x].Cells[0].Borders = tcb; tblMilestone.Rows[x].Cells[1].Borders = tcb; tblMilestone.Rows[x].Cells[2].Borders = tcb; x += 1; } editor.MoveToTableEnd(tblMilestone); //editor.InsertLine(""); editor.InsertBreak(BreakType.LineBreak); }
In our application, we have the need for aggregate functions in the grid which are determined at runtime, not design time. We were able to get this working for Group footers using a combination of the GroupFooterTemplate element and determining the applicable aggregates in OnStateInit and OnStateChanged. When our team saw that the FooterTemplate element was added, we were excited to bring "Grand Summary" functionality to this grid on top of the existing group summaries. As far as we have been able to determine, however, there doesn't appear to be a way, currently, to add AggregateDescriptors dynamically for the entire grid like we can for groups. We can do the aggregate operations manually against the data source, but this doesn't take into account and filtering which is applied to the grid. We have been unable to find any way of adding AggregateDescriptors for the overall Grid like we can for groups within the GridState's GroupDescriptor property.
Attached are two files: StateInitializationC#Code and gridRazor.txt, which contain relevant snippets of what we are currently doing.
Thanks
Vishnu Vardhanan
Current implementation of Theme Color is annoying.
I recommend:
Submitted on customer behalf:
This line of code is taken directly out of your https://demos.telerik.com/blazor-ui/grid/editing-inline
What kind of magic updates the actual database?
privatevoidUpdateItem(GridCommandEventArgs args)
{
var argsItem = args.ItemasProductBindingModel;
var index =GridData.FindIndex(i => i.ProductId== argsItem.ProductId);
if(index !=-1)
{
GridData[index]= argsItem;
}
}"
Hi,
Any information on when the Layout Components available in AspNetCore will be available in Blazor?
I am currently putting a proposal together to purchase Telerik for Blazor and could really use some of those components to enhance the application than relying on 3rd-Party integrations.
Normally, when we develop we try to give a homogeneous behavior to our applications for the user.
This is a uncomfortable when the default behavior of our application does not match those of the Telerik controls because it becomes verbose and repetitive. I look at my code and constantly repeat configurations for the different controls.
For example, in 99% times I use:
<TelerikGrid EditMode="GridEditMode.Inline" />
or
<GridColumn ShowFilterCellButtons="false" TextAlign="ColumnTextAlign.Center" />
{
"TelerikGrid.EditMode": "GridEditMode.Inline",
"GridColumn.ShowFilterCellButtons": false,
"GridColumn.TextAlign": "ColumnTextAlign.Center"
}
<GridCommandColumn Width="90px">
<div class="text-center">
<GridCommandButton Command="Edit" Icon="@SvgIcon.Pencil" />
<GridCommandButton Command="Delete" Icon="@SvgIcon.Trash" />
<GridCommandButton Command="Save" Icon="@SvgIcon.Save" ShowInEdit="true" />
<GridCommandButton Command="Cancel" Icon="@SvgIcon.Cancel" ShowInEdit="true" />
</div>
</GridCommandColumn>
Changing "Delete" icon in the whole application seems trivial, but think that you could modify the default behavior homogeneously in the whole application or in part of it if the configuration file had a hierarchical behavior, changing one properpty in one place.
I think it would be a very useful functionality to give homogeneity to an application in a very effective way, without breaking changes and making a less verbose and repetitive code.
Thank you for reading me !
Right now, when calling the ToDataSourceResult extension method on IQueryable object, the DB is queried using the given filters for example from a DataSourceRequest object. However, if I want to apply complex queries based on those filters, this is not possible unless rewriting the existing extension method to return an IQueryable.
Proposal Example API
var dataSourceRequest = new DataSourceRequest();
DataSourceResultWithQuery dataSourceResultWithQuery = query.ToDataSourceResultWithQuery(dataSourceRequest);
public class DataSourceResultWithQuery : DataSourceResult
{
[JsonIgnore]
public IQueryable query { get; set; }
}
Is it possible for this to be added as an extension method? I am currently doing this using a custom class that parses the dataSourceRequest class and returning the IQueryable, but it would be nice if this was an included extension method.
Thank you.
In the TelerikForm component, you have "FormItem" with a string parameter of Field and from the string, you somehow bind the data to that field.
For other components, we must use the @bind-Value to get this 2-way binding.
I would like to request the "Field" parameter for more controls like TelerikTextBox where we can bind using the string name of the field like we do in FormItem.
So instead of:
<TelerikTextBox @bind-Value="@customer.CustomerName" />
we would be able to do this:
<TelerikTextBox Field="CustomerName" />
Peter
Admin edit: While this cannot become a built-in feature, you may find useful the following example: https://github.com/telerik/blazor-ui/tree/master/common/grpc-example
Hello Team;
As .Net Core 3 offers gRPC support, I'm suggesting that the Blazor Team, look into some of the components that could automatically talk to backend gRPC services to get data, i.e. Auto Complete or DropDown box.
This way it could simplify different ways of providing datasource to some of these data oriented components.
Hope this suggestion helps!
..Ben
In TreeView the selected and checked items have to be provided as IEnumerable<object>. This can make things a bit of a pain if you have for example outside events that are also trying to change the list of checked items. Not insurmountable or hard but just a pain.
For example to remove an item since IEnumerable is immutable you to have to completely re-assign the collection. SelectedItems = SelectedItems.Where[Some condition] . Instead of SelectedItems.Remove, add etc.
I realize the reasons you are binding to IEnumerable<object> and not using generics
I propose adding "CheckedField" and "SelectedField" in your observable treeview binding and then we would not have to pass in Checked / Selected Items at all and just bind those fields to the Data we are passing in. Make life a lot easier.
The same thing likely applies to some other controls that have the same problem. So keep it consistent.
It seems to me on a greenfield app where someone wants the ability to switch themes, 99% of the time they would want it site wide, not just on your components. I'd venture a guess that most of us c# .Net devs moving to Blazor, don't have Ed C and your organization's sass skills. If that were built into a template used by your Visual Studio Extension Create Project Wizard it would allow us to focus more on the business logic and probably increase adoption of Theme Builder Pro
Thanks,
Kurt
Hi!
Would it be possible to expose a focus in/out (or similar) functionality for the Treeview? We currently use the component for eyebrow navigation menus, and it would be nice to have the ability to close trees when the user clicks somewhere else. We've tried doing an onclick for the body of the site, which works but also interferes with other clicks on the page. Thanks!
In release 2.0.0 it was possible to set default property Visible to "true" for AnimationContainer. That is now gone. How do I make the AnimationContainer visible per default, i.e without calling ShowAsync() in some stage?
Br,
Sten
Hi,
I do not think this is a feature yet I am adding it here, so won't put pressure on developers. The problem is that when I add a TelerikGrid inside a TelerikTabStrip it does not adjust well to changes of browser resizing. I have made different ways, like making the siez 100% or dynamic sizing and changing CSS, but each of them may break something. It would be crucial for us if the grid would change well to changes in TelerikTabStrip when its width property is 100%.
Thank you