Solved

Change text of databound textbox programatically not creating Proposed version of data

Posted on 2003-11-13
5
598 Views
Last Modified: 2012-05-04
This is a little esoteric. I have a text box control (txtbox1) bound to a dataset.  I am setting the .text property programmatically based on user interaction with another control.  The text box is on a TabPage (tabpage1).  When I set the text programmatically, navigate to TabPage2, and then return to the TabPage1,  the textbox reverts to the original text.  After changing the text programmatically if I test for myDataSet.myTable(0).myrow(currentrow)("FieldName",DataRowVersion.Proposed) I get a message that there is no proposed value.
 If I type the change by hand  I return the new value as proposed, and I don't lose the new value between navigation of the tabspages.  I would like to get the programmatic value to set a proposed value so that I still have the option of rejecting the change to the dataset, without having to write my own sub to manage this.  
Any ideas how to get the programmed text the register as having changed?  I tried setting the .modified property to True this did not work.
Is there a way to work directly with the data set to set a value as proposed while maitaining a record of the original value?  
thanks in advance
Tom Majarov  
0
Comment
Question by:tmajarov
  • 2
  • 2
5 Comments
 
LVL 4

Expert Comment

by:NetPointer
Comment Utility
If you BIND your dataset with your textbox instead of manually assigning the .text property, you will get your desired results.
0
 
LVL 4

Expert Comment

by:NetPointer
Comment Utility
Me.TextBox1.DataBindings.Add("Text",dataset.datatable,"FieldName")
0
 

Author Comment

by:tmajarov
Comment Utility
Dear NetPointer,
The text box is bound - it displays an initial value from the dataset.  I am trying to edit the text, and the thereby the intial value from the dataset by passing a value derived from the another control, for example a listbox, to the text property of the text box.   I can change the value in the dataset directly: for example

mydataset.tables(0).rows(0)("myField") = myListBox.SelectedText  

- but this then become the current value in the dataset and cannot be undone with a cancelcurrentedit call against the bindingcontext for the table.  
0
 

Accepted Solution

by:
tmajarov earned 0 total points
Comment Utility
O.K. I think I just figured out how to do what I need to do.  I will not be awarding points for answers.  I am presenting the solution here, the moderators can decide whether or not to remove the question.  The solution my be helpful to others.


     Dim myRow As DataRow = myDataset.Tables("myTable").Rows(0)
     myRow.BeginEdit()
     myRow("myField") = strText
    TextBox1.Text = myRow("myField", DataRowVersion.Proposed)

This allows the new value (strText) to be listed as a propsed value in the dataset, and then sets the text in TextBox1 to this value.  It also allows the TextBox1.text to revert to the original value when CancelCurrentEdit is called against the BindingContext.
0

Featured Post

Free Trending Threat Insights Every Day

Enhance your security with threat intelligence from the web. Get trending threat insights on hackers, exploits, and suspicious IP addresses delivered to your inbox with our free Cyber Daily.

Join & Write a Comment

IP addresses can be stored in a database in any of several ways.  These ways may vary based on the volume of the data.  I was dealing with quite a large amount of data for user authentication purpose, and needed a way to minimize the storage.   …
This document covers how to connect to SQL Server and browse its contents.  It is meant for those new to Visual Studio and/or working with Microsoft SQL Server.  It is not a guide to building SQL Server database connections in your code.  This is mo…
Get a first impression of how PRTG looks and learn how it works.   This video is a short introduction to PRTG, as an initial overview or as a quick start for new PRTG users.
In this tutorial you'll learn about bandwidth monitoring with flows and packet sniffing with our network monitoring solution PRTG Network Monitor (https://www.paessler.com/prtg). If you're interested in additional methods for monitoring bandwidt…

744 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

13 Experts available now in Live!

Get 1:1 Help Now