Simultaneous List Updating - Prevent The List From Being Updated From Different Locations
Nov 26, 2008
I use a List(Of T) (where each T is a custom type with a few members) to keep track of about 500 items that change all the time. The list can be changed from different locations within the program (uses background workers that monitor the list).
Question: Is there some built-in way to prevent the List from being updated from different locations or from different threads at the same time? For example, one thread may remove an item from the list while another location changes one of the members of an item, causing conflict, wrong data and errors. Perhaps there is a standard way in VB.Net (framework) to solve this type of problem?
I use to do programming in VB3.0 years ago and decided to try it out again with VB2005. Basically I made a chat application for my coworkers so they can chat at their desk. It's a shared network and the program is pretty simple. Basically the chat gets stored in a .ini file and that part works fine, but I want to be able to show the users who are currently in the chat and I am not sure how to go about doing this, when you login to the chat it takes your name which I would like displayed and when you close the application to remove the name from the list while keeping everyone elses updated.
This is somewhat related to my other thread, but because it's a different question and the other answer has been marked I thought this should be posted in it's own thread.I have this code another poster had written for me:
Private _MenuCloseing Private _SecondsRemaining As Long = 10 Private WithEvents _Timer As New Timers.Timer(100)
I'm having a problem with my listbox control. I am trying to handle all the keypress events for the listbox and changing the index to the item I want as they type. But the problem is the listbox changes the index to the last key they hit. Here is what's going on.
I am trying to create a list box that can have things added and removed from it with the use of add and delete buttons in subroutines, i have also got a limit of 20 as the maximum number of items in the list box, also i would like the list box to be able to update the number of items in it after the user adds or deletes items from it: here is my code:
Public Class Form1 Private Sub cmdAddZp_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdAddZp.Click
[Code]....
the first part is for limiting the number the user can add to the list box, the second part is the delete function and the last part is trying to count the number of items in the list.
Grid View is getting values from a XML & XSLT file. What I want to do is, when user selects suppose Computer Programmer from list box, the grid view should get updated with the results of only those have this program. How can I do this? Do I have to bind the xml with List Box?
I have my datgrid's itemsource binded to a observablecollection. Every 5 secs my client app resceives a list from the server which i use to update the observable collection. The problem is that when it updates the grid seems to reset (if details is open when i update the details collapses, if i have an item selected it will un-select)
Here is the code that i am using to update my observable collection: Private Sub creategriddata() Dim svc As New ServiceReference1.Clientthing then re-adding
So I have a list of names in a .txt file. Where is a place I can type in all the names I want and press save and get a link so they can see the list. Then I can remove a name and press save and the name will be gone. And or add a name. So basically I need a website where I can type something and keep it uptodate. I've tried ripway but after you edit the list and save it it doesn't change.
I have a Public Sub I am using to enumerate running processes and then display them in a ListView.I want to be able to update the list automatically each second. I've thought of doing this in two different ways, but the method that I want to use is checking if the process has exited or not.
When reading up on the Process Properties, I ran into .HasExited and .Refresh.I thought that I could use a timer and have it tick at 1 second intervals. I would then check, each second, if the Process has exited. If it has, remove it from the list.The problem with this, is that I don't want to put the sub in the timer because it would just constantly flicker the control. I need to figure out a way to access the variables inside of the Sub while inside of the Timer's .Tick event.The other issue is being able to add processes that aren't there. Which I can within another sub. I was thinking I could create a sub that grabbed the Processes by ID, compare them to the list, and them add them if they aren't there. If I did this, I could also remove Processes by ID that aren't in the list.
What I am trying to do is to instantly apply a filter to a large list of data such that the list is updated almost immediately regardless of the number of items in the list. I have this working using a listview right now but it is far from instant, a list of 5000 items takes over a minute to get through. What I do currently is to maintain a cache of my data that my listview entries are based on. When the user selects a filter I parse this data one item at a time and determine if each item should still be displayed in the listview, if not I remove it. The complexity of determining whether or not a data entry meets the filter requirements is O(1), but just getting through each element in a loop takes significant time, and so does updating the list view graphically at the end of the process.
I have considered using a datagridview instead, using a database connection. I have never done this before and my main question here is whether this would allow me to do what I have described. With the database I could form an SQL query to return only the items that meet the new filter requirements... but would the data in the form update immediately, or would there still be significant delay?
what i'm working on is, i have VB with a loaded Access DB, and i'm using a query to display the information, in a list box and in indivual labels. i have it so it will allow new entries to be made, however i can't figure out the exact code to get it to update to the program the only code i currently am able to show is this since everything is basically being done through access
I am currently trying to develop an application which will backup large folders to a specified destination. To find all the files in the specified 'backup' directory I am using the following code.
[Code]...
I have tried putting my GetFilesRecursive function into a separate background worker to run first so I can update the GUI however I am struggling on how to return the List of found files back to my application (I get cross-threading exception) and how to update the progress bar to show the progress of the GetFileRecursive function so the user knows it is processing the list of files and has not crashed/frozen.
I have an issue with a data table that I have updated using the datatable.update command.The datatable is bound to the datagridview using dgv.datasource = datatable.I have used INSERT and UPDATE commands and the INSERT command writes the data back to the database ok. However my problem is that it the dgv is not updated with the primary key (ID field) from the database. So when I save a second time, instead of updating it just inserts the data again.
This VB.NET rookie is asking for the support of those with expertise. BACKGROUND: Form1 has a Datagrid, Dataset1 create by drag DB into datagrid. Form2 presents the record selected from the datagrid. Within the LOAD_FORM I search the DB with the Key and place data in Dataset2 (DS created manually)
CHALELNGE Record updated in Form2 is saved in DB fine and when Form2 is closed, record updated does not appear in Form1. I�ve tried the following but no sucess In form1 event Ive got the code to load data into the DS Me.TUSERSTableAdapter.Fill(Me.PTDataSet.TUSERS) FINALLY: What should I do to see the datagrid updated?
I'm still somewhat new to ASP, and can't seem to figure out what the issue is.When I update an item in FormView, I need the text of a button to change.I'm using:
Protected Sub fvClientInfo_ItemUpdated(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.FormViewUpdatedEventArgs) Handles fvClientInfo.ItemUpdated btnEditClient.Text = "Edit"
II am trying to create a toggle button that switches a list to a range and then back to a list if needed. I am able to get it to do both but when I add an item to the list, convert to a range and then convert back to a list it leaves off the last items I entered.I tried to work in a code to select all cells but I must not be putting it in the right place.This is what I have so far:
In VS 2008, VB.Net, I am successful connecting to a local SQL Server (version 8) and seeing all tables/views/procedures in Server Explorer. The local OS is Win XP Pro SP3. I created an ODBC data source to a remote SQL server (also version 8) with a database of the same structure as the local one. The connection tests out ok. The remote computer runs Windows Server 2000 SP4. In the VS 2008 Server Explorer I add this ODBC source. When I click on the plus-signs to expand items, neither the tables nor the views show anything, whereas the full list of procedures appears. Is it the old SQL Server version? Is it the old Server OS version? Something else alltogether?
This is what I'm sure will be the first of many noob-ish questions from yours truly... I'm studying as a mature student for a Computing Degree (encompassing web design, hardware, programming and systems analysis). The programming seems to be my weak spot this year. I enjoyed C++ last year, doing basic console applications, but progamming visually with VB in Visual Studio 2008 I'm struggling!
Does link text mean I have to return a concrete implementation? Even though I am using svcutil with the /r that includes my entites(where IMyInterface is defined). I get no errors but it changes all List(of IMyInterface) to list(of Object) and I cannot deserialize it on the client
Error: list(of object) cannot be converted to list(of IMyInterface).
I'm looping all the properties in an object via reflection:
For Each p As PropertyInfo In values.[GetType]().GetProperties() If p.CanRead Then 'Do stuff End If Next
how to determine whether the property in question is a generic List(Of T)? If it is I need to loop the list itself.
I've experimented with GetType and TypeOf but have not managed to get anything working.
To clarify, I want to keep this generic. I do not want to specify the type of T, I need to loop the list items and call the ToString method on each item. T could be one of a number of different types (application specific reference types). Is it possible to do this without specifying types?
If I can generate a list of random integer with a click of the button and put the results in a list box using VB.Net but how do I randomly change several integer number generated by button 1 by clicking button 2? How I retain the results of button1 and change the results when clicking button2?I try before but the two button function code cannot relate to one another.
Public Class notifierMain Public Class Contacts Inherits List(Of row) Public Sub New()
[code]....
When I debug this winforms application I get curType = "notifier.notifierMain+Contacts+row" I want to the Validate function to know it is in MyContacts. How do I do this?
In VS 2008, VB.Net, I am successful connecting to a local SQL Server and seeing all tables/views/procedures.I created an ODBC data source to a remote SQL server with a database of the same structure as the local one.The connection tests out ok. In the VS 2008 Server Explorer I add this source. When I click on the plus-signs to expand items, neither the tables nor the views show anything, whereas the full list of procedures appears.How can I see the lists of tables and views in Server Explorer for an ODBC source?
I wish to make a project where a teacher views a list box with a list of students of a class. When he selects a name from the first list box the second listbox would change its data to show the grades for that one student.
I have implemented inheritance for two parent classes called Table and Field. Each parent class has several child classes. In the Table parent class, I created a method that expects parameter List(Of Field).
I get an error when trying to pass in parameter List(Of ChildField) to the method that expects a parameter of List(Of Field). The error message is as below:
Value of type 'System.Collections.Generic.List(Of com.hlb.icisbatch.data.ChildField)'
This program is supposed to allow the user to check items in a checked list box. If the item is checked, it goes into the Completed List Box on the right. The program then adds the unchecked items to the Pending list box on the left. I keep getting placement values (e.g. O,1,2) instead of the strings (e.g. "Key Returned") in the list box results (see photo attached)
Public Class frmCheckOut Dim i As Integer Dim cleaning As String = "Cleaning Inspection" Dim damage As String = "Damage Repaired"
Another program I am working on for fun, I am basically shuffling a list inside a listbox, what I want to do is delete the rest but not sure how to go through with that. At the moment I have this: [code] Just contains the code, declarations outside weren't included.So anyway, once clicked, it will call on the function to basically shuffle in a for loop, I was wondering if I should (or how should) create another function and call it in the click button or have just a loop in the click button so it deletes half the list. What I am doing is I have 20 list of items, I want the program to shuffle the items and then deleting the lower 10, meaning, if I had 10 items and wanted 5 top, I'd want: 0, 1, 2, 3, 4 and deleting 5, 6, 7, 8, 9.
I currently have a list of words in a text file sorted in to alphabetical order and put into lower case, but I would like to be able to also display the line numbers on which these words are associated with.. but only one instance of.
For example,
"This is a random text file that I have just made up this second"
[Code].....
As you can see above, I would like to show that "this" for example appears on line 1 and 4. Hopefully tabbed so that it keeps a nice look to it.
I think (?) this is about object design, and perhaps about structural and/or creational patterns. But a bit hard to say when I only know a couple of patterns yet.[code]But... what if we INSTEAD want each Product instance only to (in some way) refer to one instance of a specific list of Components. So we wan't to save the products list to one file, and the components list to another file. Then would I build the objects the same way, or different? So let's then say we have now Class B as below. [code]
1. Will not need to update each component variable of the products list when the components list changes.
2. If the Product object shall be shown in a DataGridView, for editing properties, it seems easier to implement the selection of the component property.
Is this wrong approach? Is it suitable in some cases, and if so, when? Are there other solutions I perhaps am not aware of that would be appropriate? Is this about structural design patterns? and if so, can the alternatives above be catagorized to some pattern type? I don't really know exactly what I'm looking for.. But I think probably I'm looking to understand whether the object design will be determined by the way the objects are saved.. And if i shall save the objects by serializing to file, vs saving to a database, would I create the business objects differently?