IDE :: Form Designer - ToolStrip ComboBox And Padding
May 3, 2012
While I am asking this for VB I verified this issue also occurs in C# so I think it is a .NET issue. I am using Visual Studio 2010 Premium Version 10.0.40219.1 SP1Rel with .NET Version 4.0.30319 SP1Rel.
Step to recreate the problem.
Create a new Windows Application for Visual Basic (WinForms).
Add a ToolStrip.
Add a ToolStripComboBox to the ToolStrip.
Save, note the width of the combo box.
Change the padding on the combo pax to 2.
Save and close the form designer.
Reopen the form designer, look at combo box width - it decreased. Note that form is marked as having been modified. So save it and close the designer again. Reopen the designer and look at the combo box width - it will have shrunk every time you save, close, and reopen until you get to a 0 width. It shrinks by 4 * the padding size. Why would padding affect the size since that is the interior margin where as the margin settings are the exterior margins.
I do have a form with a ToolStrip and some other controls on it. I use this form in other projects as kind of base form, which means that the other forms inherit from this form.
My problem: In the designer I can not change any properties (property window is read-only) of the Toostrip or add new buttons on it. All changes I have to do must be done in code instead of using the designer. ToolStrip-modifier property is set to Public.
In my project, I was first using two ListViews with a few buttons on the side to control actions (add files, remove files, etc). Now, I thought it looked neater if I incorporated those buttons into a ToolStrip, and put the ListViews into a SplitContainer.So I did... One SplitContainer, on the left side a ListView (docked Full) + ToolStrip (docked Top), on the right side exactly the same.
All of a sudden, (it seems to be pretty random), the right ListView (never the left one) seems to jump 'on top of' the ToolStrip. It looks as if the Z-Order changes so that the docking screws up, but after looking at the Document Outline, it is all still fine. The ToolStrip just seems to disappear from view completely. I have no idea where it went.Then, when I select the ToolStrip in the Component bar (what is that called? where you can see the control icons only for controls such as Dialogs etc), it suddenly pops up again, in the right place! And the ListView scales down a bit so everything is correct once again...
As soon as I select another control, the Listview jumps back up and the Toolstrip disappears again...At first I thought well, not really a problem since I can just select the ToolStrip from the component bar... Nope... It seems that the ToolStrip is also hidden during I thought it was just a one-off bug and deleted the whole SplitContainer to build it up again. Five minutes later, it happened again.I decided to throw away to complete project and go back to a slightly older version (with the Buttons instead of the ToolStrip) and try it again.Nope, same problem! I have tried to reproduce the bug in a clean project, but no luck...
I really want to make use of the toolstrip and databinding but these two technologies keep conflicting with each other. I think the root cause is something to with the fact that the toolstrip buttons don't recieve focus in the normal way.
I invite you to try the following:-
1. Create a form and put some text boxes a tool strip with a save button on it.
2. Write a query or sproc to get a datatable back and bind your text boxes to the field in the datatable.
3. In the code behind your Save ToolStripButton put some code that makes an arbitrary change to a field on the dataset (it doesn't matter whther this field is bound to a text box or not). eg:- m_DataTable.Rows(0).Item("CommissionRatePerc") = "0.0000"
4. Put a breakpoint in the save and run the form.
5. Make some changes in the text boxes. Do not leave the last text box but rather click save while a text box whose contents you have edited still has focus.
6. When your code hits the breakpoint, query the value of the data table field that is bound to the text box you were editing when you clicked save - it will still contain the unedited value. Unless you do something about it that unedited value is going to get saved back to your DB.
We did get around this problem by explicetely setting the focus to another control on the form before saving. That worked most of the time because it prompts the text box to flush it's value back to the datatable (nb EndEdit does not work, although you'd have expected it to). However, and this is the reason I suggested you add a line of code that changed a value in the underlying datatable in step 3, if you change a value in code in this way before the value from the text box get's flushed back then it doesn't seem to matter what you do, the user's current edit is simply lost. They will still show in the text box, though, leading your user to believe that the change has been committed when it hasn't. Our final solution is that we never ever change a value in the adtaset in the code behind our toolstrip buttons. That's working but it's a pretty big restriction.
I am attempting to update an existing winforms application, that was created with a dataset control on all the winforms pages. I have ported it from VS 2008 to VS 2010 and I need to update the database section and connect it to the SQL backend using traditional code method.In the Solution explorer, when I click on the Dataset files, and click "Exclude From project" I am unable to build the project.Is it advisable to comment out the code lines that refer to the dataset in the .designer.vb files?
My self and most everyone else on our team is having the same issue with VS2008. The designer will not render many forms in designer mode. Currently I am getting this error "The type 'Team.CAD.UI.My.Resources.Resources' has not property named 'view_16'" Well veiw_16 is in the resouces file.
I have created a search/query facility after watching one of Beth Messi's videos. I notice that we can convert the textboxes on the auto generated search toolstrip to buttons, comboxes, etc. So, when we wanna search for a data in the datagridview, we enter a keyword. I wonder if it is possible to change the textboxes to comboboxes and make it bind to the datasources, so that users can use the drop down, instead of typing?
i want the user to be able to select one from the combobox but i dont want them to be able to type in there own into the actual combobox, i tried Enabled property but then you can pick one either. And i couldn't find the IsReadOnly property on the ToolStripComboBox,
i have a question about toolstrip button.example: i have 20 form consisting MasterItem,MasterPart,MasterProduct,etc.all form have 6 button:New,Edit,Save,Delete,Cancel,Exit Button in toolstrip.the problem is : if i have a few change in toolstrip,I must change all 20 form. that's waste my energy and time.
i want to create 1 toolstrip but can use by 20 form. so if i have change,i don't need change 20 toolstrip. when using PHP,i am using include "menu.php".and this file "menu.php" can use by anyform in PHP. so if i change "menu.php",that's effect to any file using "menu.php"
I drag a toolstrip component to my form. I insert two buttons n two separators. During i configure these items, some time it will disappear but in the properties side, i still can found these items still exists. But i can't found these component in my form. I tried to add same item with same name n it show a error message box(because already exist).
I have a toolstrip on a winforms application and below it a DataGridView. Everything looks fine when the program runs initially. If I maximize the form though, the DataGridView covers part of the toolstrip. How can I make the toolstrip lock in place so that nothing will overlap it?
I am using a tabcontrol to put all my database tables as I don't want to have too many forms. I tried to set up the search form function by watching a video by Beth Messi called "Creating a search form" under form over data video series. After I finished setting up everthing accordingly, the tool strip appeared bellow the window form title bar. May I know how can I move it into the tabpage?
I've two forms Form1 and Form2, I want to add container(*) in form2 having toolstrip(Toolbar) and later want to display that container(containing toolstrip) in Form1, that enable the user to use toolstrip to execute needed actions written in form2.
I want to have a DataGrid in a form Docked as Fill, and have it located below the ToolStrip.What I mean by Docked as Fill is I want to be able to resize the DataGrid along with the Window Form.When I select Dock as Bottom, the space between the DataGrid and ToolStrip changes as well.
I was busy with a project, i'd thought I take a pauze of an hour I closed my computer. Now I open my project I have my wirtten codes but I can't see the designer anymore.. what can be the problem and how to get it back?
I use MS visual studio 2010. I did open designer and view the form for the same file A before. But after some small changes, I can no longer view the form designer.vb, but can only view code in designer.vb. Even if I go back to the original source, I still can not open designer!!
The error is: The designer could not be shown for this file because none of the classes within it can be designed. The designer inspected the following clsses in the file A-The base class BaseClass could not be loaded. Ensure the assembly has been referenced and all that projects have been built.
i have a control dll and i use this control in my project then i change this controls codes after i do it . appears some error on this lines in form1[designer]
Me.Dentisyon1 = New WindowsControlLibrary1.dentisyon Friend WithEvents Dentisyon1 As WindowsControlLibrary1.dentisyon what should i do?
if i click the designer tab i can only see a white form and the text say "Me.Database1DataSet.DataSetName = "Database1DataSet" and "The code within the method 'InitializeComponent' is generated by the designer and should not be manually modified. Please remove any changes and try opening the designer again"?
During my project I have suddenly lost my form design, all the designer code is still there but when I try and view the design layout it gives me an error saying 'navigation to webpage has been cancelled', does anyone know how to get around this extremely annoying bug ??
Yesterday I installed vs2008, installed SP1 all seems well.I have converted a project (from VS2005), it works fine but....When I try and modify any of the forms none of the controls aer displayed on the form.Additionally I have noticed that each form has a formname.designer.vb file, the top few lines of the code in the designer.vb files are;
<Global.Microsoft.VisualBasic.CompilerServices.DesignerGenerated()> _ Partial Class frmFullMarketView Inherits System.Windows.Forms.Form
[Code]....
Then my controls are listed. Do I have to copy the code held in the seperate designer.vb file back to the 'formname.vb' file for all my forms?If so, why does VS2008 create all this extra work when converting forms from vs2005?
Using the new Visual Basic 2005 Express Edition Beta.Created a project, form, controls, etc. Worked great. Love it, compiled perfectly.Saved everything, closed the program, went to bed. Woke up, opened the project, but now CAN NOT open the form (form1.vb) in Designer mode!! I can open the code, it's all there, exactly as I left it, but cannot get back to the designer mode to (easily) add more controls to it!F7 just opens the code, right-click just gives me code option, not designer option.This is amazingly frustrating..
I have a project in MS Visual Studio 2008 - VB.NET. I have opened and closed my project which consists of two forms multiple times.Today when I open my project I cannot find one of my forms in designer mode.If I run my application the form displays correctly but I cannot view in designer mode to make changes.
I am working in VB.Net 2010 framework 2.0. Suppose i declares a property
[Code]....
In the form designer, the property "MyColor" will be seen the value as 150, 145, 145. I want to see this value as "NewColor" in form designer. This is the same like ControlDark, ActiveBorder etc. system colors. I want that instead of the color value, designer should show the variable name. The .Net framework also use the above implementation for System Colors and same i want to do.
I copy/paste controls in the projects, then I noticed that there are many controls are listed in designer.vb which actually are not being used. how can I clean these? will it affect the UI performance? or, it does nto matter at all
I don't want to allow some properties from going into form's designer file but the those properties will present on the form(property grid). The behavior of these properties will be same always.
I used the following code:
<DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)> Public Property GradientBegin() As Color = Color.Red
But the problem I am facing is that -> on the property grid after changing the "GradientBegin" color to other than RED and compiling the program, it is replacing the new changed value to RED again. So I am not able to change the color actually.
On a recent project I stumbled across a page of code that looked unfamiliar, but which evidently was the code behind my form design. I'll copy and paste an excerpt to show you what I mean:
'Required by the Windows Form Designer Private components As System.ComponentModel.IContainer 'NOTE: The following procedure is required by the Windows Form Designer
[code]....
I thought this was a useful way to back up my project via email because it's in text form. But now I can't find the same information. I've looked in the Object Browser but couldn't find it anywhere. I think I stumbled on it the first time by right clicking Go to definition, but now that doesn't take me anywhere if I click on say form1. So where will I find this mysterious page that has all the form items information in text, not graphic form? Can't find it anywhere.
i have recently tried to copy my project between two acciunts, one which i access the project on a network drive and one which i will run programs from on the C:/ drive... when i tried to copy the project between accounts i began to receive the error message shown below
Just wanted to know if you had some design code which was created, and that is all you have. Can you open this designer code and create the actual working main Form from this? I don't need this designer code for any specific task, just wanted to know if there is a command within VB Studio 2010 that creates the actual Form from the design code. For example; The following piece of designer code is for a simple program that finds the Circumference of a Circle.