获取网格列的位置
如何在表单中定位按钮,使其始终位于 DevExpress 网格中的列上方?
网格列已设置为无法调整大小,但网格和列会随表单调整大小。 System.Forms.Control 具有 < href="http://msdn.microsoft.com/en-us/library/system.windows.forms.control.pointtoscreen.aspx" rel="nofollow noreferrer">PointToScreen 方法 看起来像吗提供此功能,但不是 DevExpress gridviewcolumn 中的方法。
How can I position a button within a form so that it is always above a column in a DevExpress grid?
The Grid columns are set up so they cannot be resized, but the grid and columns are re-sized with the form. System.Forms.Control has the PointToScreen method that looks like would it provides this functionality, but not a method in a DevExpress gridviewcolumn.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您可以找到相对于
GridControl
的列坐标,然后将其转换为Form
坐标。 为此,您可以使用从 GridViewInfo.ColumnsInfo 属性获取的 GridColumnsInfo 对象。 要获取GridViewInfo
对象,您可以使用gridView.GetViewInfo()
方法。找到坐标后,您将需要订阅在不同
GridView
和GridControl
更改时发生的事件。 例如,您可以订阅 GridView.Layout 并GridView.LeftCoordChanged
事件。 要调整大小,您需要订阅GridControl.Resize
事件。例子:
您可以为您订阅的每个事件调用此方法。
You can find column coordinates relative to the
GridControl
and translate then toForm
coordinates. For this you can useGridColumnsInfo
object that you can get fromGridViewInfo.ColumnsInfo
property. To getGridViewInfo
object you can usegridView.GetViewInfo()
method.Once you find the coordinates, you will need to subscribe to events that occurs at different
GridView
andGridControl
changes. For example you can subscribe toGridView.Layout
andGridView.LeftCoordChanged
events. For resizing you need to subscribe toGridControl.Resize
event.Example:
You can call this method for every event that you subscribed.