Replies
In the meantime I may have found a solution myself:
Can I handle it this way ?
Would it be more efficient to add a filter in MouseEnterElement and remove it in MouseLeaveElement?
public bool PreFilterMessage( ref Message m )
{
const int WM_LBUTTONDBLCLK = 515;
if (m.Msg == WM_LBUTTONDBLCLK)
{
Console.WriteLine("Left Mouse double click");
Point screenPoint = Cursor.Position;
RibbonTab tab = _mgr.RibbonTabFromPoint(screenPoint);
UIElement uiElem = _mgr.UIElementFromPoint(screenPoint);
if (uiElem?.Parent is RibbonTabItemUIElement)
{
Console.WriteLine($"Mouse inside of {tab.Caption}");
return true;
}
}
return false; // Not Handled
}
Hi Andrew,
thanks for your help.
Did you probably forget to attach the example? 🙂
Michael
Hi Mike,
in the meantime I found out that setting the following does work for me. But it is still very strabge!
grid.DisplayLayout.Bands.Layout.Override.CellAppearance.FontData.Name = name;
grid.DisplayLayout.Bands.Layout.Override.CellAppearance.FontData.SizeInPoints = size;
grid.DisplayLayout.Bands.Layout.Override.HeaderAppearance.FontData.Name = name;
grid.DisplayLayout.Bands.Layout.Override.HeaderAppearance.FontData.SizeInPoints = size;
grid.DisplayLayout.Bands.Layout.Override.RowSelectorAppearance.FontData.Name = name;
grid.DisplayLayout.Bands.Layout.Override.RowSelectorAppearance.FontData.SizeInPoints = size;
I'm not allowed to post the isl file. Maybe I can setup a sample project to demonstrate the issue.
Regards
Michael