I am trying to program a Yahtzee game. I would like to use a random number (out of a six sided die) and show the appropriate dice image based on the number generated. I have six predefined pictureboxes that each have a side of the dice image. I want to mimic the picturebox based on the number received.
For example:
x = Int(1+Rnd()*6)
die1.Image = diex.Image
Where x would be the random number and would pull from the appropriate picturebox.
I've got a couple of these NumericUpDown controls I put on a form. Without describing too much about the form I basically want to update some variables each time one of these NumUD controls changes value. So for each NumUD I have a call to a Recalculate subroutine within their "changedValue" event.
There are actually two problems. First, if I initialize the "Value" property to something other than zero in VB2010 at DESIGN TIME it won't even open the form when I hit RUN. It gives me a "No Source Available. No symbols loaded for any call stack frame" error. The error box says "InvalidOperationException" was not handled. So if I try to set the initial value of the Value property to anything but zero of either I get this error.
This code passes a button name ("Button2") and a value (4) to be displayed on it. Can the "UpdateButtonName" procedure be streamlined by replacing the "For Next" and "If Endif" code with something else since the button name is already known? It shouldn't have to check control on the form to see if it is the one I want.
Public Class Form1 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Last year (2010) I came across a FANTASTIC command that allowed me to take a string of variables with a common delimiter and break it all back out into separate variables (possibly an array) with one statement.
[Code]...
As long as the delimiter was a unique specifiable character, this one-statement command could break it out into elements. my memory and point me in the right direction.
I have code, shown below, that works all except for 1 thing: The variables being passed byRef get passed, but once modified in the else section of the "if me.invokerequired" code of RecordData, the variables are never updated in the calling function. To reiterate, the calling function does not receive the updated data that is in the variables custid and amt.When debugging, I see the data change in the else section of "if me.invokerequired", but once it returns from the callback the data is missing.[code]
I define some global variables of a class as follows:
Private Class MyClass Private var1 as Decimal Private list1 as List(Of string)[code].....
But I found that after this form is closed, all above variables, var1, list1, list2 still exist in memory. I thought they should be collected by gc since the form is already disposed as I confirmed.
Add: I have monitored half an hour after the form is closed. But these variables are not collected by gc. I have an automatic update procedure on the form which uses above variables.Since the above variables still hold values, the automatic update procedure is always called which causes exception. (One quick fix is to check if form.isDisposed in update procedure. But I do not think this is elegeant. Besides, these variables occupy memory.)
Does the memory used in declaring variables are reclaimed by the OS when these variables go out of scope?Does the memory used be released by setting thier value to nothing? if not, then how can I force the garbage collector to run or excecute at a certain/desired time..How about in Windows Forms..How can we make sure that the memory used in initializing and showing forms be released if those forms were closed?
Question 1: What is the difference between "Background Worker" and "Worker Pool" as indicated within the MSDN samples provided.
Question 2: I noticed while using, AddressOf _Function_, variables cannot be passed; what would be an efficient solution to this?
Question 3: While using multithreading is it required to invoke before setting variables, or only form properties?
Question 4: While using System.Net.Sockets is it safe/efficient to use Application.DoEvents while waiting for new data; or would be using a Do While loop be fine without DoEvents since the action would be multithreaded? Note: there can be up to 2000-3000 sockets in use at a time.
I'm new in .NET programming.I have a class Form1 that includes Button1_Click event.Button1_Click creates a multiple Text Boxies at run time)Here is the class:
Public Class Form1 Dim shiftDown As Integer Dim counter As Integer
I wanted to know if anyone could tell me how to access the Click_event.I have a boarderles form with a panel control which has the Dock property set to fill and on the panel I have placed a Label also with the Dock property set to fill. I also have a timer running.How can I get code to execute in the Label1 click event.I've tried doing it by using the generic Click_event and also with two variations of the Click_event Handles parameters
'Alternativ 1: Private Sub Form1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Label1.Click
There is newer code in a follow up post. I suggest using the code in the later post rather than the code in this one. You can still read this post though. When designing a user interface, one should be conscious of how many individual controls are required to implement the functionality. In some cases an initial design may begin with many buttons or textboxes (for example) but then further review of the actual required functionality allows for a reduction in the number of unique controls.
But other times, there isn't a better way (which will still make sense to the user of the application) then to have a series of many repeated controls. So in the cases where one can be certain that the best UI implementation for an application will require the use of multiple copies of a given control, then it often becomes necessary to maintain some method of managing all of those controls at various points throughout the application. Doing so typically requires that one build up some collection of controls which can then be accessed by index in order to work with any given control; but this can lead to a lot of clutter in the code file which handles these control's events. For instance there will be some kind of collection declaration, some recursive routine to find all of the controls of interest, and then any number of event handler methods with long lists of Handles clauses, or additional code loops to wire up the event handling for each control.
Purpose Since most of this functionality could be considered a requirement regardless of the type of control being managed, or its required functionality, it may make sense to wrap all of the control management functionality into a single class. And since our first requirement is a collection of controls, then a base collection class could be the perfect starting point for our control manager. There are a number of existing thread around this topic, with some recent (at the time of this writing) ones being:[URL]..In this, and related, threads I have posted examples of a simple TextBoxManager and ButtonManager control. But again, with so much similar functionality required regardless of the control being managed, it would be technically possible to create a generic ControlManager(Of T As Control) class which can manage any type of control.
[Code]...
So in summary, one can facilitate managing a large number of user interface controls by building a "control manager" class which both encapsulates the list of control instances, and deals with adding and removing defined event handlers for every control it manages. The generic control manager class itself can be inherited and extended into a more specific class on a per-application basis in order to provide more application-specific functionality. Reed Kimble - "When you do things right, people won't be sure you've done anything at all"
If I have the following ListView, how can I attach a SelectedIndexChanged event listener to the DropDownList so I can perform a command on the respective object? Imagine I have a list of new users and I want to add them to a usergroup by selecting the group from the DropDownList.
I have a maximized form that has controls at the top of it and a large DataGridView that is docked below all the controls. Its kind of like the Ribbon in MS Office. The controls cover about 1/4 of the screen at the top. I would like a way for the user to click a button to hide all the controls then automatically expand into the place the controls were so the user can view more data in the DataGridView and visa versa. For example, in MS Office Excel you can hide the ribbon by clicking a tiny button that has "^" on it.
I'm not very familiar with all the controls in Visual Studio so I would like to hear some recommendations. Is this situation ideal for a SplitContainer or ToolStripContainer or am I way off base here?
I've been building controls for many years professionally and personally, but even back in VB6 days I just could not work this out. After all this time I remembered about it again.If I create a usercontrol/containercontrol and add one or more controls to the controls surface, I just cannot figure out how to access the controls at design time.
I have a query about dynamically added controls to a form. I have a series of buttons which are created and added at run time. I have a two drop down lists and two buttons which are created at design time. Button 1 creates a series of buttons called "Test 1.x" based upon the selection of the two drop down lists. This works fine and am happy with the logic.However.... Button two should remove all the dynamically created buttons from the form.This does not happen. What does happen is that 50% of the buttons are removed starting with the first one. WHen checking the loop it only enters the loop half the amount of times that there are buttons. Very strange. When the loop is run repeatability it will remove all controls. Why will my logic not remove all the dynamically created controls at once? What is wrong with my logic?
I attach two code snippets and the .net file for your consideration.Button method which creates the dynamically created buttons from the two drop down lists and adds to form
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim Count As Integer Dim MaxHours As Integer
The object browser in visual studio contains many controls and properties ....so is it possible to remember in mind all these controls. Whenever i am programming in vb 2008 and for reference i look at the examples on internet i always find some new controls,properties etc which makes me confuse.So i was wondering If by any means there is a way to remember all these controls
I have aspx form with several textboxes.They are populated with values from a table via retrieval of a dataview.If the row count for the dataview is 0, then I'd like to reset the values in all textboxes. How can I loop through all the textboxes and set a default value?I've tried the following, but no sucess.
For Each ctrl As Control In Page.Form.Controls If TypeOf ctrl Is WebControls.TextBox Then CType(ctrl, WebControls.TextBox).Text = "" End If Next
My first For Loop was using Page.Controls but it returned only 1 count.The textboxes are inside a tabpanel (ajax), so do I have to locate the tabpage and then find all it's controls (for each tabpage)?
How can I add controls to a form in code and set the properties of the controls using the With statement?Also I would like to know how to add a container control and then add a control to that container.
I have a slight problem With an enumaration of child controls on a form. The following code will not get but about have the controls that are on the form. The controls show that the count is correct but when it goes through the loop it skips over some of the controls. If you run it through the enumeration two or three times it will get all the controls a few at a time. The solution uses two forms, one that has the controls and the other that labels are made and displayed on. The Tx is just a index to add a number to the label.name and rename the label. So each label is identified seperately. This works for all the the controls that are seen in the for each loop.
I am rather irritated at this. I have no clue why looping through controls on a form and in groupboxes leaves out 75% of the controls.
Here's the code I have:
Dim settings As String = "" Dim gbControl As Control Dim gbbox As Control
[Code]....
I want to have setting save all settings to an ini file, and not have to reprogram the saving routine when I add a group box or control. At random times, any number of controls can be disabled, checkboxes can be checked and unchecked, radiobuttons can be checked and unchecked. Regardless of the state of the control, I want the control to show up in the loop. But they don't. Only controls that are enabled and only checkboxes that are checked, every other control state is ignored. That's crap, and is definitely not what is needed by any programmer of any type. We're capable of determining if a control is enabled, hidden, checked, visible, and otherwise.
How do I get the controls to be included in the loop regardless of their state?
I cannot work out the correct formatting of the above type addressing for a textbox in a (sort of) array of textboxes such as
textbox_1 textbox_2 textbox_3 etc.
The controls are on Tabs but I don't think I need to include the Tab as a container control, just refer directly to the textbox on the form, but I cannot work out how this is done in VB .NET format. In VB6 it was relatively straightforward but VB .NEt seems it is different. Can anyone help me with the correct way to formulate
I have a module level sub that I use to clear text fields etc on my forms:
CODE:
The problem I have is in the last few lines of code as I'm not really sure how to access the text boxes contained within the tab controls (of which there are many tabs and many text boxes).
This is the closest I've got but I am getting an "option strict on disallows late binding" error on the tabCtl in the following line.
I wanted to delete all of the TextBoxes that I put on a form that start with "tbx". The below code only deleted some of them.
For Each ctl As Control In Panel1.Controls If ctl.Name.StartsWith("tbx") Then ctl.Dispose() End If Next
So, I took it a step further in testing...Now I'm really confused about the .controls collection. When I try to delete controls from Panel1 with the below code, it only deletes every other control instead of all controls.
For Each ctl As Control In Panel1.Controls ctl.Dispose() Next
It looks like it deletes item(0) which moves everything back one step but then advances the pointer to the next step. For example, if the following controls exist on the form...
I would like to know how do .net developers manage a large window application with a large number of controls, such as textbox , button, groupbox? I have seen a number of people do it this way : declare the controls as an array and initialize them one by one at run time . In this way it is easy to manage those controls because they can be accessed by array index; but this solution seems to require very good understanding of control's attribute such as its location, font etc. This could be a difficult task if the project is passed on to a less experienced developer and add changes to it.How do you deal with it?