I have a FlowPanelLayout that can contain several UserControls called DataGridViewFilterSortElement. These controls look kind of like buttons, but different. I want the user to be able to click one of the DataGridViewFilterSortElement controls and drag it to another position (index) in the FlowLayoutPanel. Is there a way to see the control physically moving as the user drags it to another position? In other words, is there a way to take a "snap shot" of the control that is being dragged (instead of a shadowed box) which would show the actual control moving as the cursor moves?
Also, as the control is being dragged I'd like to have the other controls position to shift automatically instead of waiting for the user to drop the drag to see the shifts. For example, let's say the FlowPanelLayout contains 3 controls and the user wants to drag the first control to the third controls position. So the user clicks and holds the first DataGridViewFilterSortElement, then drags over the second control, which causes the second control to shift to position 1 of 3, then the user drags over the third control, which causes the third control to shift to position 2 of 3, then the user drops the control in position 3.
Here is a short little video that shows what I want to do: Video Example
Private Sub lblDescription_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles Me.MouseDown, lblDescription.MouseDown
' if the user left clicks and holds the element begin a DragDrop action
If e.Button = Windows.Forms.MouseButtons.Left Then
Me.DoDragDrop(Me, DragDropEffects.Move)
End If
End Sub
[Code] .....
I know that there is usually a DoDragDrop method that starts a drag and drop operation. And that there are events (such as DragEnter, DragOver, DragDrop, DragLeave) that can be handled on the target side.
Are there any events on the source of the dragdrop that will tell me whether the dragdrop operation was completed, or possibly cancelled?
I have a SplitContainer on a form that has 2 panels. The top panel has a FlowPanelLayout control docked in it and the bottom panel has a DataGridView docked in it. I want the top panel to be collapsed when the form is first shown. As the user adds controls to the FlowPanel I want to grow the top panel just enough to see the controls and visa versa. When the user removes controls from the FlowPanel I want to shrink the top panel. If no controls exist I want the top panel to collapse again.
Can I do this by changing properties of all the controls at design time, because I can't figure out the right combination to make it work? Or do I have to do this programmatically?
I had originally created an "Options" form that had all my different options checkboxes and settings. I am implementing a new layout for the UI and am wanting to move all the contents of the Options form to the main form without having to redo a bunch of code.
I know cutting and pasting will "break it", so I'm not sure how to do it with minimal effort. is this doable?
I would like to learn how to move a control like the visual studio program. In the toolbox you have a list of all your controls (button, listbox etc....). They are labels and when you double click or drag on the label the associated control shows up on the form.
How can I do something like this in my application?
I am creating an application where I can move resize controls around and this way set up an application. I need to know how to select a control (e.g.: textbox, button...) at runtime as I would do in Visual Studio for example.Then once I could do this the next question would be how can I change the icon of the mouse when it goes onto such control?
I have a form that has many tabs and I have some buttons just bellow the tabs, but if I could move those buttons and place them inside the tab I would save some space bellow and I could extend on the tabs. So is there a way of moving controls from one tab to another depending which one has focus.
Is there any way in c# or VB to automatically move the controls in a panel when the window is resized. I do not want the Anchor property, which only resizes the control. THe use is that controls are added at runtime to the form, and when the locations/values are loaded on a computer with a larger monitor, they are in the incorrect positions.
I've created a tab control and on one of the pages I added a button, but I cannot move the button around with the mouse!? I can change the buttons position within the tab control page using the property Location and I can size the button using the mouse and the button is NOT locked. I even tried creating a new project with just the tab control and it still does the same thing. I can, tho, move the button using the keyboard arrows!
I'm using VS2010 V10.0.30319.1 RTMREL on WinXP SP3.
I am trying to create a way to use my arrow keys to move around some text boxes. The form has 12 textboxes moving from left to right with 4 in each row. Tab Index will be like this.
0 1 2 3 4 5 6 7 8 9 10 11
In the code I have figured out how to find the current tab index but I am having trouble moving to the next control based on which arrow key is pressed. Here is the code I have so far.
Protected Overrides Function ProcessCmdKey(ByRef msg As System.Windows.Forms.Message, ByVal keyData As System.Windows.Forms.Keys) As Boolean 'This variable holds the current tab index for the control that has focus.
[Code]....
I commented the area where I haven't been able to figure out how to code it. I have spent a few days working this out and have spent the past 6 hours working on this part.
How do I do this? If I cut and paste, then it wipes the code, sometimes the stuff doesn't even show up when I run the program (I guess it's loosing all the handler information) I read about not cutting / pasting controls in the sticky at the top.
I have been working on a windows form over the last couple days and I have hit a brick wall when trying to move my controls.
I think I have basic understanding of anchoring and docking but I'm not getting the results I'm hoping for so I have attached some screen shots of what I'm trying to do.
It's not about re-sizing more about moving the controls to the outer edges when my form is maximized.
I have an MDI application which uses fixed sized forms. I've started to change the forms to sizeable and anchored the controls so they move when the form is resized. If the child form has a menu this jumps onto the parent menu (as it always has done) but all the controls move up the form at runtime and leave a space at the bottom of the child. If I change the form in design mode to cut through the bottom controls i.e. so the form doesn't appear tall enough, it corrects itself at runtime. Is there another workaround as it looks misleading in the designer.
I'm looking for a way to click and drag an item out of a listview, and get the explorer path I dropped the file on, so I can write data to that location.
i have to forms, one with a RTB on it, the other with a treeview on it.I want to be able to drag a image from the treeview over to my rich text box.Basicly like a clip art window.The treeview nodes have a short description of the image (e.g Dog) then a picture of a dog next to it. I want then to be able to drag that into my rich text box, and the picture of the dog to appear.Is there a easy way to do this?
I am trying to drag and drop items from a listbox into a richtextbox? I can not get the .DragDrop event to fire? I have copied and past the code from [URL]
I can get the .DragEnter event to fire. The mousedown event fires the drag and drop, is there something for mouseup?
I am dragging and dropping values from a listview to a datagridview cell.In the datagridview I have AllowUserToAddRows = True because I want them to drag in as many items as they need.
The problem is that when I drag an item into the new row a newer row is not created below it as it would if I had typed something int he cell and left.
I tried to add a new row on the CellValueChanged event but that inserts a row above the row that I just dragged to.
Anyone know how to trigger that event after a drag and drop?
I have a treeview dragdrop event written in VS2003. It works perfectly fine when the application is running on desktop, until we move the application to Citrix. So, users are now running it off from Citrix, the DragDrop event doesn't work anymore. It doesn't even have the effects of allowing dropping.
I'm using the following code to reorder rows, it does work but i can't find a way to implement any indicator that shows me where the row will be droped, is it possible to do? It seems that the handler DragDrop is blocked until the mouse is released..vb.net
Below is a practical example of how this would be useful:A practical example would be an FTP client where a user dragdrops files to be uploaded and would naturally want to dragdrop remote files to their local folders with the intention of triggering a download of that file to the folder they dragged the listview item to.
When I use the code below, I can't get any (copy)effect as I drag things onto the picture box(img). Therefore, I can't dragdrop files. How can I make dragdrop event possible?
I am new to vb.net and development in general. The basics are I have a control that accepts dragdrop, I use this control to drag files onto - based upon the text contained in a combobox the directory path is built in the dragdrop event, and I initiate System.IO.File.Copy. I then refresh my listview, which is working well and is listing files based upon the content of a directory. Here is my code for the dragenter and dragdrop subs
Private Sub pnlDataDrop_DragEnter(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DragEventArgs) Handles pnlDataDrop.DragEnter If e.Data.GetDataPresent(DataFormats.FileDrop) Then e.Effect = DragDropEffects.Copy [Code] .....
I have added some break points so that I can see the values for targetpath and myfiles(), and all looks ok. The app is in its very early stages, so I am only testing in the development environment at the moment. So you know, the targetpath is a UNC: \myservermydirectory.
I trying to do a drag drop from a listview in one form to another instance of the same form (same application running twice).I have it working with single items selections, but I want to make it work with multiple selections. 289508(VS.71).aspxThis works if I drag/drop onto itself (the same form), which I don't want, but I need it to work across instances.During debugging it seems the code DragDrop code just quits at the line during the drop:Dim myItems() As ListViewItem = e.Data.GetData("System.Windows.Forms.ListViewItem()")Any ideas what is wrong or how to drag/drop multiple items in a listview between apps?
here's my code: Private Sub ListView1_DragDrop(ByVal sender As Object, ByVal e As System.Windows.Forms.DragEventArgs) Handles ListView1.DragDrop
In old vb6.0 it was easy to highlight the target item, where to drop those dragged rows.
Private Sub listView_OLEDragOver(Data As MSComctlLib.DataObject, Effect As Long, Button As Integer, Shift As Integer, x As Single, y As Single, State As Integer) Set listView.DropHighlight = listView.HitTest(x, y)
You can get the item to drop to in VB.NET:
Private Sub ListView_DragDrop(ByVal sender As Object, ByVal _ e As System.Windows.Forms.DragEventArgs) Handles _ ListView.DragDrop
[CODE]...
Now we got the index and item, where to drop. But then what? One possibility to do the HighLight is change the ListViews state to "LVIS_DROPHILITED" by sending Windows message "SendMessageA(lvw.Handle, LVIS_DROPHILITED, 0, 0)". But when is the right time to do that (DragEnter or DragDrop event) and what are the right parameters? Didn't succeed on that yet.
Working on a DragDrop application. I have a class object (built as an object) which has a GroupBox that is enabled for DragDrop.
In the class I have set it up so that the cursor will change when it enters the groupbox, leaves the groupbox, mouse is down within the groupbox and drag/drop is working. I also set up a label in the class object and changed the text in that label as well. Basically, the text changes in the label as expected including 'FEEDBACK' appearing when I am dragging the object BUT the cursor stays stubbornly as a pointer. This is tghe state of affairs either when I debug the class or when, after I build the class, it is run as part of the main program.
Here are the subs set up in the class.
Private Sub GroupBoxSourceMouseDown(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles GroupBoxSource.MouseDown GroupBoxSource.DoDragDrop(GroupBoxSource.Text, DragDropEffects.Copy)