Edit Box not showing up on Windows 7 - wix

I have downloaded the newest version of Wix Toolset and have made a custom dialog to get the connection string for the database from the user. When I test run the Msi on a Windows 7 machine, the dialog box is there as well as my display text, but the edit control is not showing up. If I click on where it is supposed to be, I get a cursor and if I start typing then the white background on the textbox shows up. Is this a bug?

Almost certainly this is a Z-order problem where another control is overlapping with the control you want. First, ensure your controls don't overlap. Then, order them in the Dialog element such that the highest z-order are last (IIRC).

I had a similar issue where the edit boxes were "invisible" until I clicked on them. After examining the code, I realized that my controls were being "painted over" by my dialog bitmap. I made the bitmap code the first line in the dialog and this fixed the problem as the controls got "painted over" the bitmap.

Related

How to determine which form controls the keyboard input on VB.net

I'm developing a VB.net windows application and I have some issues with the keyboard input.
My application has different forms and I'm showing and hidding them with the user interaction. One of the inputs comes from the keyboard, and here is where I have a problem.
When I hide a form and show the next one, most of the times the new-shown form does not receive the keyboard input until I click somewhere on it.
I assume that the problem is that the new form I'm showing is not the "selected application" for windows until the user interacts with it by clicking on it, but I don't know how to set this "property" by code.
I tried with focus and select on the whole form (Me.select/focus) and in some form's control (me.lbl_xxx.select/focus), but I did not get any result.
Can anyone explain me how to control which application/form gets the keyboard input on windows?
Thanks
David
You can't really interact with a label so the input focus won't be set properly.
Focussing a specific textbox on your form on the other hand should just work fine.

vb.net 2008 express: Two textboxes in a custom control

I'm making a custom control in VB.net 2008 Express. Without getting into the details, I am able to duplicate the issue as follows:
Make a blank custom control. Stick two textboxes on it. Don't add any code.
Run it and click the second textbox. (Don't click the first.) The text cursor appears of course.
Now Type... Although the text cursor moves within the second textbox, the text you type appears in the first textbox, not the second one.
I have found that this issue depends on the tab order of the controls. Whichever textbox is first in the tab order gets text typed in the other.
I have also found that if you press [Tab] to set focus on either textbox, the problem goes away.
QUESTIONS:
1) Is this a known bug in .net? (Specifically 2008 Express)
2) Will this phenomenon carry over when the custom control is brought into a larger project?
I followed the steps above and was able to reproduce it when I started with a Windows Form Control Library and ran it inside the UserControl TestContainer. I test this in Visual Studio 2008 Professional.
However, when I placed the user control inside a form in a separate Windows Forms Application project, the issue did not occur. So I'd think it's safe to say that this won't be an issue when the user control is used in another project.

Visual Studio Form Designer changes layout of controls on open

I have a user control that looks like this in the designer:
However, when I close the designer and open it again, it looks like this:
The eight controls that have moved are text boxes and labels that are all set to Anchor Top, Right while all the other controls have different anchoring.
Does anyone have any idea what is causing this change of layout, and more importantly, how it can be prevented?
I also had the problem of changing the layout of my form every time by opening it in design mode.
The problem was the use of the tool "TableLayoutPanel".
By coincidence I found that changing the property "Dock" solved the problem.
Just set to another value and then undo this.
After this is seems to be solved. Don't ask me why!

Treeview control (comctl32 / VB5-era) missing icons & captions?

VB6 app works fine on Windows 8 with one exception:
Display form with treeview. Displays correctly.
Click button which displays another form used for entry.
When the new form is dismissed (and a new node added to the treeview) all nodes' pictures and are invisible. The +/- signs display, but not the pictures and captions.
If the form is closed and then re-opened, all nodes are properly displayed until another form is opened.
The two forms involved are both MDI child forms.
Thanks.
I just ran into this problem on a client machine. Unfortunately I didn't have the luxury of rebuilding using VB6 (mscomctl.ocx) controls, which according to the previous comment should work.
However it turns out that if you disable the "Touchscreen keyboard and handwriting panel" service in Windows 8 the comctl32.ocx TreeView control will work properly.
IIRC from prior experience, while the treeview in COMCTL32 (from VB5) has this issue, updating the program to use the VB6-era MSCOMCTL32 treeview should fix it. I don't think we ever found any other fix for the root problem, assuming you can't disable the touch services.
I believe the two treeviews are very similar and this upgrade shouldn't be difficult.
I don't recall if any other common controls had the same issue.

How to stop my tools strip menu items from appearing in the taskbar?

I have a program which runs mainly though a NotifyIcon in the bottum right of my windows screen (XP). Whenever I open the ContextMenuStrip that appears when the icon is right clicked, a box also appears in the task bar. I also have nested menus inside the menu (mouse over one item leads to another menu), and each additional menu also creates a taskbar box upon appearing. So once I am at the third or fourth nested menu, there would be 3 or 4 windows appearing in the taskbar. After the menu disapears, so do the windows in the taskbar.
How can I stop the taskbar from displaying boxes to represent these menus? I have done nothing in my code as far as I know to create this type of behavior. I have searched for similar problems but have found nothing similar. There is no "showintaskbar" property for these items as far as I can see, and no other property that I can find which would affect this. I have investigated the owner of the contextmenustrip since I read the owner may effect these type of behaviors, but that doesnt seem to be helpful as there isn't an owner property of the contextmenustrip.
I don't know what else to search for, so I am here hoping someone can give me a clue as to what else may effect this type of behavior.
Any help is greatly appreciated. Thank you!
If you are using the ContextMenuStrip.Show() method, it will display in the taskbar as you describe. Try assigning your menu to the NotifyIcon.ContextMenuStrip property instead.