Check If An IEnumerable Is Being Accessed Using A For Each Loop?
May 19, 2009
Suppose I have an IEnumerable such as a List(TValue) and I want to keep track of whether this list is being accessed (to prevent issues with, say, adding to the list while it is being iterated over on a different thread); I can always write code such as the following:
Dim List1 As New List(Of Integer)
Dim IteratingList1 As Boolean = False
' ... some code ... '
[Code]....
(I realize this code is very arbitrary, but it illustrates what I'm talking about.)
My question is whether there's a better/cleaner way to perform this check than by manually updating and accessing a Boolean, as above. I feel like there must be, but, to my knowledge, there isn't any IEnumerable class with a built-in "I am being iterated over" method or property. And writing a new class that implements IEnumerable and contains such a property seems like overkill to me.
View 3 Replies
ADVERTISEMENT
Mar 11, 2010
This is weird. I have a class that inherits from IEnumrable whose Count property is reporting 0 (zero) elements but the For Each loop steps into the loop body and tries to use the variable where it should just be moving on. My code:
On Error Resume Next
Dim d As Foo
For Each d In fooCollection
' use d and throws an exception
Next d
Weirder still, every time d is accessed i get an exception thrown in the output window:
A first chance exception of type 'System.NullReferenceException'
but i'm not stopping on the exception (not in a try/catch block).Is "On Error Resume Next" causing this weirdness?
Weirdness found:Per Rowland's and JohnH's comments i checked the Foo class:The GetEnumerator method inside of Foo didn't actually return anything! It had an empty body. That coupled with the On Error Resume Next before the loop caused the havoc! Wow this was ugly.
View 3 Replies
Apr 5, 2012
I'm copying over some files to a target directory on a daily basis.Before I move the new files over, I'd like to delete the old files under the target folder, possibly using System.IO.Directory.Delete()But my problem is, the target folder is on a public drive where everybody in the company could access, and I don't want to empty the folder while someone else might be using those files.I'm thinking whether there's a Class that check the status on the files in a specific directory before I come in and delete everything.(I know I would get an IOException if I disregard the status of the files and try to delete them)
View 2 Replies
May 9, 2011
I have an object called Result<T> that has a constructor which accepts an argument of IEnumerable<T>. I'd like to be able to pass in a datatable if possible.
I tried datatable.AsEnumerable(), but where I bind to the data it was complaining that 'MyProperty' is not a field or property on type 'DataRow' - which makes sense since 'MyProperty' isn't a property on 'DataRow', but it was a column in my datatable.Is there a way to convert a datatable to something that I can pass into the Result object and still have it bind to, say, a gridview?
View 3 Replies
Dec 16, 2010
I tried using the linq Zip method on IEnumerable but it does not work for more than 2 arrays.Here is an example in Python of what I am trying to do(I got p - nested IEnumerable - and need q - another nested IEnumerable):
>>> l=['a','b','c']
>>> m=[1,2,3]
>>> n=['x','y','z'][code].......
View 2 Replies
May 2, 2010
I am writing a program for a client that will allow them to disable and enable services. I have the services loading into a checkboxlist on a form. When the user clicks the "update" button I go through all items in the checkboxlist and see if they are checked or not. The code I have so far, and the code Im stuck with is:
[Code]...
View 4 Replies
Mar 21, 2010
I have this code:
Dim x As Integer = 0
Dim x1 As Integer = 210
Dim x2 As Integer = 240
Dim x3 As Integer = 310
Dim m As Integer = 0
Dim x4 As Integer = 480
[Code]...
View 6 Replies
Oct 13, 2010
I have a Form with a Group Box with a number of check boxes within it, each check box has a text box next to it for the user to enter a number. I wondered if it was possible to loop through the check boxes within the Group Box to find out which are selected and output the value in the associated textbox next each checkbox as it loops?
View 2 Replies
Nov 15, 2010
There are 30 check box in a form, ckb0501, ckb0502...ckb0530. How to make a loop to check if any one of check boxes was checked?
View 6 Replies
May 9, 2010
How do I not return duplicate random numbers with Do Until loop?
Dim numbers(5) As Integer
Dim subscript As Integer
Dim searchSubscript As Integer
Dim randomNum As Integer
Dim randomGenerator As New Random
Dim isFound As Boolean
[Code]...
View 2 Replies
Aug 15, 2011
My application is in VS2008 coded in vb.net.I have a form with a datagridview which loads data from databaase.there is one column where data is stored separated by comma's.Like Name,Surname,LastName name this column as Testing.I have a checklistbox on another of my form.When the user selects a particular row from datagridview another form open and the row selected records are populated in the control of my other form.My issue is i want to check those items of my checkbox that are present in my Testing Column.I have used and array im able to fetch the records just im not able to check the items in my checklistbox that are present in the column
Below is my code
chkList is my checklistbox controls
FORM1 is my form that has datagridview
Below is the code of my second form that has checklistbox
Dim classesChecked As String() = FORM1.DATAGRIDVIEW.Item(10,FORM1.DATAGRIDVIEW.CurrentCell.RowIndex).Value.ToString.Split(",")
For i As Integer = 0 To classesChecked.Length - 1
Next
how can i check the items of my checklistbox.
View 1 Replies
Nov 3, 2009
So I'm kind of new to VB and am just playing around with a little project, I currently need a loop that is constantly checking the systems clock to see if it's equal to a certain time.
While Not myTime.Hour = 24
If TimeOfDay = newTime Then
nfi.ShowBalloonTip(15)
[code].....
View 4 Replies
Jun 10, 2012
I want to do a For Each loop where i can check whether each button is enabled or disabled. If the button is enabled then i have to obtain the values in the tags for each button. I have 26 buttons each containing different values (cash prizes).*IMPORTANT: this code needs to go under the button so every sixth time its pressed it checks the buttons.
Pseudo-Code:
btncase1.tag = 5
Begin while statement to go through each button
Check each button to see if it is enabled
[Code].....
View 2 Replies
Jul 28, 2011
I have a input form that has a number of check boxes on which relate the users enquiring courses. I need to create a loop of some sort that allows each checkbox to be checked it is selected. If so, output that within a message box. Thats it put simply anyway.
I have removed a lot of the code that is not related to this query but my code at the bottom is the message box that i wish to output all details in.[ocde]...
View 1 Replies
Feb 27, 2009
Is it possible to find a particular string present in a string array?Example
Dim myString as stringmyString = "abc"
Dim myStringArray() As String = {"rg", "grg", "grg", "dgdg"}
Is there any way to find myString is member of myStringArray, without writing any loop?
View 10 Replies
Oct 10, 2011
Following code is used in a .NET 2.0 windows service to continuously monitor a the table in the Database.[code]Seelctjob method will connect to SQL server 2005 database and executes the following Select query to see if there is a record with a particular status code.[code]This Select Query is executed continuously. If there is a record Start method will process further.I want to avoid executing the query continuoulsy. I tried using Sleep method and timer control. Thread.Sleep method stops the execution for sometime.[code]What is the best way of connecting to DB and monitoring a table at regular intervals of time without having much performance impact? When to use thread.sleep and a timer control and what is the difference between them?
View 4 Replies
Apr 28, 2012
I need to loop a ListView and check each items imageindex. If it is a 5 or 6 change it. What i have so far...
Array.ForEach(lvw.Items.Cast(Of ListViewItem)().Where(Sub(lvi) lvi.ImageIndex = 5 OrElse 6 then ......))
View 4 Replies
Feb 15, 2010
I'm using a loop condition to check if there is null value in the columns, then remove it.
-Original author
[STart:]
For i As Integer = counter To dt1.Columns.Count - 1
For x As Integer = 0 To dt1.Rows.Count - 1
if some condition then
something = true
[Code]...
Sometimes it runs correctly and sometimes even though when i becomes greater than (dt.columns.count - 1), it still executes the for loop and throws an error that there is no column with that index. I must be missing something here but I'm not able to debug the issue.
View 4 Replies
Apr 20, 2011
I have a series of checkboxes named cbS1 through cbS20 and I set 'Count' as an integer.What I need help doing is taking the value of count and check the checkboxes that are greater than the count.example: count = 7 so checkboxes 8-20 would be checked.Im not sure how to make an array out of the checkboxes to use in a loop.
View 1 Replies
Nov 27, 2009
I need to be able to have a loop which checks records in the database and if it matches up then do something. I need to check that zone = currentZone and if it does then to submit my update query.
View 7 Replies
May 12, 2009
How would i check to see if a file exits on a website before attempting to download it?Also in my code ive enclosed the instructions in Do loop and if the file doesnt exist i want to skip the code and loop to the next file.
View 6 Replies
Dec 1, 2009
My next step is to allow a pause checking the status of the motor and or inputs before going to the next step. Reason is so it does not do many calls to the motor controller so fast. I need some help building a loop that checks status of the motor and if Motor1Active is 1 which means it is running that it needs to wait a bit and then rechecks itself. If it is not running it will continue to the next step command. Here is a sample of what I got but need to figure out say a 50ms wait before rechecking. I guess a loop that rechecks and waits 50ms and then rechecks the status and if done and reads 0 then it goes to the next step. if still 1 output data it waits 50ms and then rechecks. The following is what I got started with but need help with if then else and anything else statement.
' get the current status of both motors and the digital inputs
Private Sub GetMotorStatus_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles GetMotorStatus.Click
Dim Motor1Active, Motor2Active, Motor1StepsLeft, Motor2StepsLeft, DigitalInputs As Integer
[code]....
View 3 Replies
Dec 12, 2011
How can I write a loop to run for each day in the current month and then check to see if the Dataset has a record that matches one of those days and take an action?
For Day As Integer = 1 To DaysInTheMonth
For Each row In MyRows
If row.Date.Day = Day Then[code]....
This generates too many rows in the table I have it building. Basically, every day gets as many rows as there are that contain data.I'm building a HTML table that gets mapped into a chart using jquery so I need a for everyday of the month.
View 2 Replies
May 31, 2011
I am making this program that has a loop that goes to a website and fills in a form within the loop. But first, here is my code thus far
Dim message As String = TextBox3.Text
Dim loopnumber As Integer = TextBox4.Text 'makes the necessary variables
Dim browser As New WebBrowser
Dim url As String
[Code] .....
But what happens is that the loop runs a few times then it errors on the setattribute line (line 19 above) with
NullRefrenceException was unhandled
And I have a feeling that it is not loading the page fully before it tries to fill in the form.
View 1 Replies
Jul 26, 2010
As you all know, If the dataBase requires a numerical value then an error will occur when the user tries to insert the incorrect data type. With the code below after the user types in a value beside an int value type then it will go into an Loop through more than what is needed. How can I apply the same logic but allow the program not to check the 60 rows (I set the row size to 60). I want to break out of it if there are blanks ONLY if a row is blank and not for a black cell, because if the user leaves one cell blank then it would loop through the 'for each' for how many rows that they is. Initially there are 60 rows.
MIS
For Each item As DataGridViewRow In dgvLaser.Rows
If IsNumeric(item.Cells(3)) Then
Exit For
Else
MessageBox.Show("Check Record Count. Numerical values only..!")
End If
Next
View 9 Replies
Jun 17, 2011
Is it possible to define my list of strings like in 'good old' VB60, to use only on ebyte of memory for each character? .NET always seems to store any string as unicode, which doubles the required memory. The case is that I have a huge list of strings, all of the same size. It is about 50.000.000 items, 12 characters each. You can imagine I am running out of memory in no time. I tried converting them to arrays-of-bytes but in that case I loose the possibility to perform a "LIKE" statement in a FOR-EACH loop to check for a specific item.
View 6 Replies
Feb 2, 2011
I am writing a Do Until Loop to check if the number entered in a textbox is between 1 and 12 in Visual Basic 2010.
View 4 Replies
Feb 22, 2012
I am waiting for a confirmation email to arrive within the web browser I am using I do not need to click any buttons to open this mail I just need some help figuring out how I can check whether it has arrived or not I already have the code to find the link and navigate to it (I had to navigate rather then invoke due to it trying to open in a new window outside of web browser and out of my control)
How can I keep checking for my specified element and when found carry out the rest of my code or is there another way I should be doing this the code I am using to find the verification link and navigate to it is as follows
[Code]...
I really am desperate for help on this one I have been reading about loops but cannot seem to find any example which I can use and change to my needs I have done so well in learning up until now and I have really hit a brick wall for something which seems so simple
View 2 Replies
Mar 7, 2012
I have several checkboxes in a groupbox on a vb 2008 express userform. I would like to check the checked status of each when clicking a command button and then write the checkboxes caption to be used in an email or print out. I've tried several methods and always end up with the same error "Invalid Cast Exception". I have read the help on msdn and still do not understand how to make it work. Here is the code I've been trying
Dim chk As CheckBox
Dim sb As New System.Text.StringBuilder
Dim names As String
For Each chk In gbInterior.Controls
[code]....
I have also tried the code below but cannot figure out how to check the status and print the checkbox caption.
Dim ctl As Control
For Each ctl In gbInterior.Controls
If TypeOf ctl Is CheckBox Then
[code]....
View 3 Replies
Nov 16, 2010
I have an insert statement which works fine but before the record is saved I want to validate the text boxes. So I just need to know how to check for empty text boxes before the save button is clicked on. I have seen a couple of examples like:
Dim ctr As TextBox
If ctr.Text = vbNullString Then
MsgBox("empty box")
[code].....
View 11 Replies