Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • Home
  • SEARCH
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 888449
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 15, 20262026-05-15T13:23:59+00:00 2026-05-15T13:23:59+00:00

I’m really falling in love with the whole .Net databinding scheme… but apparently there

  • 0

I’m really falling in love with the whole .Net databinding scheme… but apparently there are still a couple of gotchas out there. Let’s say that my class has a member variable of type double named Susan. Well there seems to be no immediate way to bind Susan to a text box SusanText because the binding looks something like this

SusanText.DataBindings.Add("Text",datasource,"Property")

And Susan isn’t a property. So I can make Susan a public property, but that kinda stinks… what if I want to keep Susan hidden? (I guess I could make Susan a public property of a private instance of some internal class… but that’s a lot of work for a little double.) However, I have a bigger problem coming up, so for the sake of argument let’s go ahead and do this:

private double Susan_;
public double Susan{ get; set;}
...
SusanText.DataBindings.Add("Text",this,"Susan")

Then everything initially seems to work as expected. If I alter SusanText, Susan is altered correspondingly. However, the problem arrises when I alter Susan directly. I would like for SusanText to be automatically updated. So I suspect that I need to make Susan a subclass of double that implements some sort of IBindable interface, so that if Susan is databound to SusanText that the appropriate Events are registered and Susan will notify others if she is modified.

What is the simplest way to make Susan do what I want her to do?

Thanks!

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-15T13:24:00+00:00Added an answer on May 15, 2026 at 1:24 pm

    DataBinding expects the class it’s bound to to raise INotifyPropertyChanged to indicate that a value has been altered and needs to be re-read; unfortunately implementing this still requires some manual coding (or something like PostSharp to IL-weave the necessary code).

    So, to support databinding you can’t use automatically implemented properties, or be bound directly to the field–neither gives you the opportunity to raise the necessary events (the binding will work, but the value won’t be updated when changed).

    Another shortcoming of DataBinding is that it doesn’t consider threading. If a background thread modifies a databound value then the databinding will try to make a cross-threaded call to update the UI–which is bad. The best workaround I’ve found is to let bindable classes hold an instance of their UI’s Synchronization Context, which will let you ensure updates to the UI are invoked on the UI thread.

    using System.ComponentModel;
    
    namespace MyWebGrocer.Uma.UI
    {
      public class BoundClass : INotifyPropertyChanged
      {
        private string _Name;
    
        private int _Age;
    
        public event PropertyChangedEventHandler PropertyChanged;
    
        public string Name
        {
          get
          {
            return _Name;
          }
          set
          {
            _Name = value;
            OnPropertyChanged("Name");
          }
        }
    
        public int Age
        {
          get
          {
            return _Age;
          }
          set
          {
            _Age = value;
            OnPropertyChanged("Age");
          }
        }
    
        protected void OnPropertyChanged(string propertyName)
        {
          var propertyChanged = PropertyChanged;
          if (propertyChanged != null)
          {
            PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
          }
        }
      }
    }
    

    I know it all sounds discouraging–these shortcomings of databinding were learned the hard way. However, it’s better to be aware of–and compensate for–these issues early on before they manifest as bigger problems.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

link Im having trouble converting the html entites into html characters, (&# 8217;) i
I want to count how many characters a certain string has in PHP, but
I have a string like this: La Torre Eiffel paragonata all’Everest What PHP function
I have a French site that I want to parse, but am running into
I'm parsing an RSS feed that has an ’ in it. SimpleXML turns this
I need to clean up various Word 'smart' characters in user input, including but
I want to construct a data frame in an Rcpp function, but when I
Seemingly simple, but I cannot find anything relevant on the web. What is the
That's pretty much it. I'm using Nokogiri to scrape a web page what has
I have just tried to save a simple *.rtf file with some websites and

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.