|
How to persists gridview textbox value when paging.
My situation is after user entered text in textbox they will click on the button to check their answer. But after i click gridview next page the previous page textbox value is not keep.
Thanks.
|
|
|
|
|
I am trying to insert (not add) data to a listview. The listview has 7 cols.
The code I am using is:
ListViewItem item = lvBOM.Items[2];
lvBOM.Items.Insert(2,"Hi");
This code is activated by a button click. The result is that a row is inserted but the word "HI" does not appear.
Full row select is set to true.
c# 2013 framework 4.51. Desktop app.
Thank you,
Duke
modified 9-Dec-13 10:43am.
|
|
|
|
|
I just tried that and it worked fine, is there something else that you are doing?
Veni, vidi, abiit domum
|
|
|
|
|
Thank you for replying.
The app has 2 listviews. The lvBOM listview has 7 cols.
I have supplied test data to all 70 rows in the first col only.
Here is the code for that:
for (int i = 0; i < intRCount; i++)
{
ListViewItem myItem = lvBOM.Items[i];//row
myItem.SubItems[1].Text = "5";//col
}
In the same button_click I followed that code with this code:
ListViewItem item = lvBOM.Items[2];//row
lvBOM.Items.Insert(2,"Hi");
The result is that the row is inserted but the data does not show. This data is test and only used to test the insert function.
|
|
|
|
|
I have four rows and three columns in my control. When I press the button it runs the following code:
ListViewItem item = listView1.Items[2];
listView1.Items.Insert(2, "Hi");
The row is added, and the word "Hi" appears in column 1. I can only assume that there is something in your code that you have not shown us, which is causing a problem.
Veni, vidi, abiit domum
|
|
|
|
|
Thank you for hanging in there with me..
I just started a new project. In the form load I have the following.
I still cannot get it to work.
private void Form1_Load(object sender, EventArgs e)
{
lvBOM.Clear();
lvBOM.Width = 451;
lvBOM.Columns.Add("", 0, HorizontalAlignment.Center);//skip first col
lvBOM.Columns.Add("Level", 40, HorizontalAlignment.Center); //level 1 is base
lvBOM.Columns.Add("Part Number", 100, HorizontalAlignment.Center);
lvBOM.Columns.Add("Description", 250, HorizontalAlignment.Center);
lvBOM.Columns.Add("Qty", 40, HorizontalAlignment.Center);
lvBOM.Columns.Add("", 0, HorizontalAlignment.Center);//InventoryMstrGUID
lvBOM.Columns.Add("", 0, HorizontalAlignment.Center); //InventoryMstrGUIDMAIN
lvBOM.FullRowSelect = true;
lvBOM.View = View.Details;
for (int i = 1; i <= 70; i++)//'initialize rows so grid looks like a grid
{
var lvi = new ListViewItem("");//will add to column(0) not being used
lvi.SubItems.Add("");
lvi.SubItems.Add("");
lvi.SubItems.Add("");
lvi.SubItems.Add("");
lvi.SubItems.Add("");
lvi.SubItems.Add("");
lvBOM.Items.Add(lvi);
}
ListViewItem item = lvBOM.Items[2];//row
lvBOM.Items.Insert(2, "Hi");
}
|
|
|
|
|
When you add the new item the text is placed in the first column. But you have chosen to hide that column, so the text never shows. Change the width of that column to something larger than 0 and it will work.
Veni, vidi, abiit domum
|
|
|
|
|
Thank you so much. But I apparently am having a fundamental problem.
ListViewItem item = lvBOM.Items[2];//<<<< this line inserts the row
lvBOM.Items.Insert(2, "Hi");//<<< I thought this line would select the 3rd col since the index is 2.
Column 0 is hidden = 0 index
column 1 is visible = 1 index
column 2 is visible = 2 index
I thought the "HI" would go into the 3rd column which has an index of 2.
What am I missing? How do I do this?
|
|
|
|
|
No, you are adding an Item into the second position of the view. You need to set the string into the second subitem position of the item that you add.
Veni, vidi, abiit domum
|
|
|
|
|
I am rather new at listviews so please excuse my ignorance.
I searched for hours on the net before signing up for this forum.
I do not understand why this >> lvBOM.Items.Insert(2, "Hi"); won't work.
What is the '2' if not to place data in the 3rd col?
Can you give sample code?
|
|
|
|
|
I finally got it. Thank you very much.
|
|
|
|
|
dbushong wrote: I am rather new Nothing wrong with that, we all had to learn at one time. Make good use of the reference pages on MSDN, like the ListView pages[^].
Veni, vidi, abiit domum
|
|
|
|
|
I'm looking at trying to make a app. that keeps track of camp-sites for a season. I was wondering if I should go with a full blown database (which I assume cost money) or maybe go with a XML file.
If I went XML I was wondering what would be the best way to do it. All the information in one xml file. Or maybe one xml for each month of the season and keep track that way.
Any input would be great, thanks for taking the time to help a noobie out.
Stevish
|
|
|
|
|
|
Not much for requirements, it's just a simple booking system I guess. I really new to C# are programming as a whole, did some PHP a while back. I just wanted to make something that could be useful while I am learning.
Thanks for the info!
Stephen
|
|
|
|
|
|
I also used XML for storing some data in some cases.
An advantage: You can manually tell the application which file you want to load (or store to) and keep multiple different versions at the same time without causing any problems. If you're using a database this is getting a bit more difficult. Also if you want to store them in a e.g a Source Control as most Databases store the data in some binary format. You can however easily compare different XML files with each other.
Besides. Database might generally offer better performance but they can also require quite a lot of resources to run. If you don't have lots of data an XML file might still be faster than a database.
|
|
|
|
|
Thanks for your suggestion, I will read up on Sqlite
Thanks again!
Stephen
|
|
|
|
|
The data doesn't sound particularly tree-like (could have been an excuse to use XML)
It sounds like a bunch of records - like a database. If you find that too heavy-weight, you could use a simple comma-separated text file, or maybe just serialize your array of records to a binary file.
|
|
|
|
|
Ya your got me, I was looking for an excuse to fool around with XML.
I'll will likely go with one of the DB options above and start learning
about that.
Thanks again all for the great info! very helpful site
Stephen
|
|
|
|
|
You're kid of comparing apples to oranges. XML is not a database. You can use it for simple tables and such but it has no query engine. Go with a true database engine and you'll be much better off.
|
|
|
|
|
Ya working on setting one of those free ones up now. If I went with the XML root I would of used linq to xml.
Again thanks all for the help!
Steve
|
|
|
|
|
Member 10445348 wrote: If I went with the XML root I would of used linq to xml.
That's not exactly what I would call "performant". There is no indexing with XML or LinqToXML. Searches only work by iterating over the entire set of rows in a field.
No thanks. I'll stick with a database engine.
On top of that, XML doesn't scale with the number of users. Add more than a small handful of users using the system simultaneously and you'll be begging for a database engine.
|
|
|
|
|
Your more then like right and that is the direction that I went. I'll likely be back for help from time to time lol. I guess I should fill out the member stuff so I don't have such a funny member name.
Again thanks for all your comments!
Cheers!
|
|
|
|
|
XML is never the right answer to any data storage question unless that data is intrinsically tree based. XML is a text format, so you have issues with performance and accuracy saving numbers, dates and other binary formats, and it's a very verbose text format at that.
If you want tables of data with connections between them then you want a database or something that acts like one, otherwise you'll end up writing a query engine yourself and that's silly. As well as the free options already mentioned, mySQL is free, and if you don't want an external dependency, you can create an in memory DataSet (System.Data) which can be enough for simple applications.
If you don't think that a database is necessary for the level of complexity of your app, then it can make sense to use tab separated text files for each 'table'.
|
|
|
|