VS 2010 - Adding Index To Listbox Values During Population
Jun 27, 2014
I have a SQL table used by a third party application that I have very little control over. The table contains a list of assemblies and their corresponding serial numbers. The tables primary key is a composite of the assembly number and serial number. There is no field I can use, reliably as an index.
I have an application I'm working on that pulls all the serial numbers from that table based on the assembly in a SQL View. I've then written code that pulls the serial numbers from that view based on the part number in a textbox on the form. That functionality works fine but I had both my datatextfield and datavaluefield set to the serial number. I've created another empty listbox that I would like to populate from a serial number or serial numbers being selected in the first. That is not working, I believe, because there is no index for the list.
My question is...How can I add an index value to each serial number as they populate from the SQL table. I've included the code below that I have pulling the serial number values.
This is an ASP.net VB webform.
Code:
Private Sub FillSnAvailList()
Dim strconnect1 As String = ("Data Source=MyDataSource")
Dim con1 As New SqlConnection(strconnect1)
con1.Open()
Dim cmd1 As New SqlCommand("SELECT [sPartNum], [SerialNum] FROM [V_MaxSerialNum] WHERE ([sPartNum] = @sPartNum)", con1)
I have a set of values in a listbox on an ASP webform. I can select items, and in code, if the user selects some row from a different grid, the listbox shows the correct value. The user can also select a different value. All of this appears to work as I would expect. However, that's as far as it goes. At first, the SelectedIndexChanged event wasn't firing. I determined that was because I hadn't hooked up the event handler, which I did with this:
(the EnableViewState wasn't part of that solution. I added it later)
Now, the SelectedIndexChanged event fires, though it doesn't fire when the user selects something, it changes later, possibly in response to an AutoPostBack, since I read that will trigger the SelectedIndexChanged event. That's fine with me, either time will work ok. However, the SelectedIndex itself is always -1, as if nothing was ever selected. In fact, though I can see visually that something is selected, I have yet to figure out what that was, or how to access the index, the text, or anything even the fact that something was selected.
I've never built an ASP.NET application. At my work, we have a bunch of different PDFs, Word and Excel documents, HTML pages, etc, all in one folder. My boss has tasked me with creating a web app to combine all of these items into one interface.
Among the things I'm adding, I need to convert a VB app I made. All the app does is scan our servers for log files and displays them in a ListBox.
Before I start importing the classes and setting up the code, I decided to just add a ListBox to the page and add a ListItem during page load.
VB.NET Code: Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load Me.lbLogs.Items.Add(New ListItem("Test", "C"))End Sub
But, an exception is thrown when I try to run it.
The example I'm using there is the example shown on MSDN. Why this is occurring?
I am using SQL2008 and created a full-text index on 1 of my tables. Going through the wizard, I was offered (2) types of population schedules as follows:New Table Schedule: Define a population schedule for a table.New Catalog Schedule: Define a population schedule for a full-text catalog.I am familiar with a 'Catalog' schedule for population which I do nightly and was similar to configuration on SQL2000 for a full text index. However, what is the difference for a 'Table' schedule vs the 'Catalog' population schedule? I have the definitions above, but if someone with knowledge could offer a better in depth explanation in comparison, and if I should use both or not (I have just a Catalog population scheduled currently),
I have two list boxes, one has a list of available users (about 1500 items) and the other is blank. There is a button to add the seleted items from the first list box to the second one. Both of these listboxes are within an update panel and for some reason it takes over 20 seconds for the items to show up in the second listbox.
Is this normal? Is there an alternate, faster way of doing this?
My question is probably a simple one to people used to ASP.NET, So here it is:
I have a webform in a master page that has a listbox which populates itself with numbers which serve as unique id for my objects.
The only problem is that the selected index property of the listbox is always -1 and it automatically deselects itself, no matter what I select. I understand that the index is -1 when you havent selected anyhting, but I have. Here is my C# code that I used to test it and my ASP.NET code:
[code]....
I use the first message box to see what the selected index is and the second to check my 3rd items in the listbox is being recognised.
I want to display whatever i select in the listbox into a label.
I thought it was as simple as this but nothing seems appear.
Protected Sub lbxInstalledPrograms_SelectionIndexChanged(By Val sender As _ Object, ByVal e As EventArgs) Handles _ lbxInstalledPrograms.SelectedIndexChanged lblDisplayDetails.Text = lbxInstalledPrograms.SelectedItem.ToString()
As you can see in the picture below i've got a Page control with inital letters which cotains a listbox showing different wood articles. When i click on a Tab, the selected tab page get's a new Listbox control with the wood articels starting with the selected initial letter.
Creating the listbox:
[Code]....
[Code]....
When i click on a item inside the listbox, following code will be executed:
[Code]....
So far, it works fine for me. But when i change the selected Tabpage, the first SelectedIndexChanged in the listbox in the new shown tabpage is not recordnized. That means i have to select a new item and click on Search = the selected Item is still the item i selected before i changed the tab. Then i select the item again and click on search the index changed is recordnized. So why do i have to click two times on search to get the new selected item after a tab page changed?
I have some problem to understand how this example works with the updatepanel. I have put a ListBox4 and a label inside an updatepanel and put the property for the ListBox to AutoPostBack = true; So what I now am trying to do is when I click on the four items in the ListBox, I want the label to update the new String that is clicked in the ListBox. However what first happens when I click the 2:nd item is that I get the error:
Index was out of range. Must be non-negative and less than the size of the collection. I wonder what the correct way is to do this. I am not sure to know what is right here ? I think many example I do will be solved if I learn this one.
I have a listBox that is bounds its content from the database. This control is inside an itemTemplate. When the item template is boudned, I want to select the corresponding value.
I have this ugly single line of code:
[Code]....
What it does is to select the right value to a ListBox that is databinded with values inside a DetailsView
I must be doing something wrong, but this makes sense to me. I have a Listbox loaded with tons of items from a datasource. A user clicks one of these items it grabs the selectedindex (an integer) and stores it in a HiddenField (works fine).
Now when the page does a complete a refresh (after postback) I want the ListBox to go back to that selectedindex that is in the HiddenField. Problem is, it seems that after postback the HiddenField is empty? Then I thought about storing the value in an Integer variable in code, but that is simply coming up as a zero at all times.
Question 1: What is the best/simplest way to do this?
Question 2: How?
I am currently grabbing it on selectedindex change
I've made a small site which purpose is to allow people to add members to their clan. The page has a dropdown list with the names of all available clans.
The name of the clans and the clan password come from a text file which is read when loading the page (but not when there's a page postback) and adds the clans to the dropdownlist.
The clan name and clan password are also read into an array for later use.
When the user selects an item in the dropdownlist I want to get the index so I know which clan name to use and which password.
I tried getting the index by using the indexchanged event and also just the click event of a button but somehow this doesn't seem to be working properly.
When the user filled in all fields and hits the submit button I want to check if the password is correct and want to know the clanname. I'm trying to do this by using the array's with that data and setting the item of the array equal to the index of the selected item in the dropdownlist.
But when I press the button I keep getting a wrong password error even though it's correct. If I remove the password check and submit it then the form should create or append to a text file with the name of the clan. But when submitted the text files is .txt instead of clanname.txt.
Tried setting the dropdown to autopost back or without and get the same result.
My code is the following:
reading the data into the array + adding the clannames to the dropdownlist
vb Code: Dim data() As String Dim clanname(50) As String Dim clanpass(50) As String Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load Dim fileName As String = "C:/ClientSites/data/clans.txt"
[Code] ....
The submit button code
vb Code: Protected Sub btnSubmit_Click(sender As Object, e As System.EventArgs) Handles btnSubmit.Click naam = txtMemberName.Text.ToString gamertag = txtGamerTag.Text.ToString platform = txtPlatform.Text.ToString index = DropDownList1.SelectedIndex paswoord = clanpass(index)
[Code] ....
In short I load in data from a file into two arrays, clanpass and clanname. Populate the dropdown with the clannames. Then upon submitting I want to check the password against the password for the selected item by using it's index. I also want the name to write it to the correct text file.
However, in my button click event, when I check waht is the selected item's value (lstCategories.SelectedItem.Value, also lstCategories.SelectedValue) I find that the selected item is always null.
the user can only select one item in the list for what it matters. (SelectionMode = Single)
I have a dropdown list which provided input to a SQLDataSource query which is bound to a listbox. When the user changes the index of the dropdown box, I want to trigger the SQQLDataSource to requery the database, and repopulate the listbox.
I have set the autopostback = true for the dropdown box. I have also added a Response.Redirect back to the same page in the SelectedIndexChanged method, but the DataSource does not Repopulate. How to trigger the requery?
I'm having a problem when trying to add a new row to a grid view when the grid view paging is "2" for example. Basically, when the data I'm trying to add will be on page number two of the grid, the drop down list I'm trying to bind raises an exception saying that the index is out of range.
How can I add a new grid row with paging and how to tell the drop down list that the row it is looking for is no longer 11, but 1 on the second page?
In my opening page of a web app I create (from a database get) two somewhat large datasets for 2 listboxes. I populate and databind them and all is good with the world
I then want to take those 2 listbox datasets and put them into a session variable for use on other pages of the web app. The reason is I do not want those additional hits in populating the two listboxes again (data does not change)
I am calling a class and passing back a DATASET for each listbox .. then
Session (DATASET_1) = MyClass.Dataset1 Session (DATASET_2) = MyOtherClass.DataSet2 DATASET_1 AND DATASET_2 are defines as constants with a type of DS
How to get the selected item from the listbox in the selected index changed event. I tried: Label1.Text = ListBox1.SelectedItem.Text; It is giving me object set to null reference.
foreach (ListItem item in ListBox1.Items) { if (item.Selected) { //lblResults.Text += item.Text + " "; Label1.Text = item.Text; } }
I'm adding ListItems to a ListBox from two controls, both are DropDownLists. The ListItem has the properties ListItem.SelectedItem and ListItem.SelectedValue, but I also want the ListBox to keep track of which DropDownList the ListItem came from.What would be the best way to do this?
I need to display the contents of a file selected from a ListBox into a text box. When I populate the ListBoxItems, I set the Text property to the name of the file and its full path to the Value property.
When I click the item, the page refreshes because AutoPostBack is on, but nothing happens. I then tried this:
VB.NET Code: Protected Sub lbLogs_SelectedIndexChanged(ByVal sender As Object, ByVal e As EventArgs) Handles lbLogs.SelectedIndexChanged Me.txtServiceTag.Text = Me.lbLogs.SelectedItem.TextEnd Sub
I have some files listed on a listbox and want to upload them to the server. The values doesn't need to be selected. But I can't even get it working. Below is my source code: