WPF handle column header click - wpf

how to handle a column header click (WPF's DataGrid)
I want to get clicked column header's text from code and change it's background...

ButtonBase.Click can be used

Related

Material Table - is it possible to move row selection text from toolbar to the bottom of page

I'm using Material Table at the moment and am having difficulty customizing the position of the selection text (presented when one or more rows are selected via the checkbox).
Looking at the documents, I can see that the toolbar is overridable (https://material-table.com/#/docs/features/component-overriding), however the examples show simpler changes e.g. how to change the background color. I wonder if it's possible to separate the selection text from the toolbar and render it in a different location, like the below picture demonstrates.
Does anyone know if this is possible?
In the end, I turned off the row selection text in the toolbar by using showTextRowsSelected: false
I then made a custom footer using the row data presented by the onSelectionChange handler.

Removing Border/Margin/Padding from Form

I created a derived Form class, with the constructor using GridLayout as a parameter.
How do I remove the white border(or the margin/padding) from a form object? I tried updating listItemGapInt in my theme.res but that failed to work.
Here is an example of a form taking up the screen. (I believe the border is coming from my Form, it may be from my GridLayout)
Override both Form and ContentPane UIID's in the theme and make sure they have 0 padding/margin:
Double click theme.res
Select "Theme"
Click Add on the bottom
Type in Form on the top combo box
Select Margin tab and uncheck the Derive flag. Do the same for padding
Repeat this with ContentPane instead of form
Press Save in the designer tool

How to remove focus from the Infragistics ultragrid cell when clicking outside?

I have an infragistics ultragrid control in a windows form. There is an 'Add New' button outside to insert new rows to the grid.
The problem I faced is, when I click the button outside the grid, while I'm editing a cell inside the grid, the cell doesn't lose focus. Because of this the edited new value is not updated to its underlying data source.
I need this cell to lose focus and update it's underlying data source, because the 'Add New' button creates a new row with this particular column having a default value which is calculated based on the previous row's edited value.
So any ideas on how to unfocus the ultragrid cell? This situation may apply to normal GridView also.
If your button is on a Toolbar, then the behavior you are seeing is expected because toolbars don't take focus. If this is the case before performing your logic you can use the PerformAction method of the grid and pass in UltraGridAction.CommitRow to force the row that was being editor to commit its updates.
For example:
this.ultraGrid1.PerformAction(UltraGridAction.CommitRow);
I used myUltraGrid.ActiveRow.Cells[0].Activate(); which also works. But the solution by #alhalama is better one I guess.

On Click on the RowHeader the current row should be editable and On click of the columnHearder current column of all row should be editable

I have a silverlight DataGrid, by default on page load the all the cells of the datagrid should be Readonly. I have 2 problem , can any one help me?
1.On Click on the RowHeader the current row should be editable
2. On click of the columnHearder current column of all row should be editable
This might not solve your entire problem but it should partially address it.
This is to make a column read-only in a datagrid
DataGrid.Columns[7].IsReadOnly = true;
Obviously the property can be changed from events but the data grid does not have row/column headers event handlers. Custom controls seem the way to go without introducing any new gui elements like buttons and changing the feel of the application.

Add a button to a column header in Telerik RadView

Is there a way to put a button in the column header of the Telerik RadGridView component for WPF.
Sure: http://www.telerik.com/help/wpf/gridview-styling-column-headers.html
You'll want to create a new custom GridViewHeaderCellTemplate and put your button in there.
GridViewHeaderCellTemplate - the ControlTemplate, applied to the GridViewCell.
Also see: http://www.telerik.com/help/wpf/radgridview-styles-and-templates-templates-structure.html#GridViewHeaderCell

Resources