当单击ButtonEdit的省略号按钮时,在ButtonEdit的ButtonClick事件中,我启动另一个表单,用户从中选择一个表单。DevExpress RepositoryItemButtonEdit
该查找表单通知我选择的值的原始形式。
当我的原始形式学习所选值时,它使用SetCellValue方法设置与ButtonEdit关联的单元格的值。但是,该值不显示,直到单元失去焦点。有没有什么办法可以让ButtonEdit作为就地RowEdit的单元格仍然有焦点时显示值?
当单击ButtonEdit的省略号按钮时,在ButtonEdit的ButtonClick事件中,我启动另一个表单,用户从中选择一个表单。DevExpress RepositoryItemButtonEdit
该查找表单通知我选择的值的原始形式。
当我的原始形式学习所选值时,它使用SetCellValue方法设置与ButtonEdit关联的单元格的值。但是,该值不显示,直到单元失去焦点。有没有什么办法可以让ButtonEdit作为就地RowEdit的单元格仍然有焦点时显示值?
Set view.ActiveEditor.EditValue
。
处理ButtonClick事件时,传递给事件处理程序的sender参数表示其值必须更改的编辑器实例。所以,我想发布一个额外的解决方案,展示如何设置编辑器的值:
private void repositoryItemButtonEdit1_ButtonClick(object sender, DevExpress.XtraEditors.Controls.ButtonPressedEventArgs e) {
DevExpress.XtraEditors.ButtonEdit edit = sender as DevExpress.XtraEditors.ButtonEdit;
edit.EditValue = SomeValue;
}
第二种解决方案不起作用。为什么?因为在ButtonClick事件中,我将启动另一个窗体作为对话框(“查找窗体”)。当用户在查找表单上做出选择时,它会引发我原始表单正在侦听的事件。它在LookupItemChosen事件中,我必须设置编辑值,而不是在ButtonClick事件中。 – Tim 2011-04-29 18:19:14
如果可能的话,我会支持DevExpress团队发布的解决方案。 RepositoryItem应该总是有一个“OwnerEdit”作为事件的发送者,但是编辑并不总是处于“视图”中。 我也希望查找对话框有一个属性为其选定的值,而不是依赖于其中的事件。例如System.Windows.Forms.OpenFileDialog有它的属性“FileName”。 – Snixtor 2012-02-27 06:18:38
看起来很有希望。我会回报。谢谢 – Tim 2011-04-29 18:26:11
按需要工作。谢谢! – Tim 2011-04-29 18:33:44