as described in title, have form datagridview on front. datagridview smaller form in , want datagridview disappear whenever click anywhere else datagridview.
my code looks this:
this.datagridview1.leave += new system.eventhandler(this.focus);
and eventhandler defined this:
private void focus(object sender, eventargs e) { if(datagridview1.focused == false) { datagridview1.visible = false; } }
my problem datagridview disappears when new event in form activated not when click example in textbox on form.
can me?
the leave
event not raise if click on form
, or toolstripbutton
, picturebox
or other non-selectable control.
if expect behavior dropdown, can host datagridview
in toolstripcontrol
host , show using toolstripdropdown
. way when click anywhere outside `datagridview, disappear. act dropdown menu. grid can larger form:
private void button1_click(object sender, eventargs e) { this.datagridview1.margin = new padding(0); var host = new toolstripcontrolhost(this.datagridview1); this.datagridview1.minimumsize = new size(200, 100); host.padding = new padding(0); var dropdown = new toolstripdropdown(); dropdown.padding = new padding(0); dropdown.items.add(host); dropdown.show(button1, 0,button1.height); }
important note: it's example. it's better pay attention disposing of objects in real world application. example, use single toolstripdropdown
, dispose when closing form.
Comments
Post a Comment