@DancingOnWater

Как свзяать WindofsFrom.Control с источником OneWay образом?

Есть класс типа этого:
public class CeplerElements
    {

        public CeplerElements() { r = new double[6]; }
        public CeplerElements(ref double[] array) { this.r = array; }
        public double a
        {
            get { return r[0]; }
            set { r[0] = value;}
        }
 }

Есть WindowsForms типа этого:
public partial class ControlResultCorrection : UserControl
    {
        public ControlResultCorrection()
        {
            InitializeComponent();
            DataBindings.DefaultDataSourceUpdateMode = DataSourceUpdateMode.Never;
        }

        public double a
        {
            set { labelAValue.Text=value.ToString("0.0##"); }
        }
 public   Object DataSource {
            get { return m_source; }
            set
            {
                DataBindings.Clear();
                m_source = value;
                if (m_source == null)
                    return;

                var propertyDict = new Dictionary<string, PropertyInfo>();

                PropertyDescriptorCollection propCollection = getSourcePropCollections(m_source);
               
                var thisProps = this.GetType().GetProperties(BindingFlags.Public | BindingFlags.Instance | BindingFlags.DeclaredOnly);

                for (int i = 0; i < thisProps.Length; ++i)
                {
                    var name = thisProps[i].Name;
                    if (thisProps[i].CanWrite && DataBindings[name] == null && propCollection.Find(name, false) != null)
                        DataBindings.Add(name, m_source, name);

                }
            }
}

При связывании вылетает исключение: "Привязка к свойству \"a\" конечного элемента управления невозможна."
В чем причина я не понимаю, а в яндекс видимо не тот вопрос задаю.
  • Вопрос задан
  • 2245 просмотров
Пригласить эксперта
Ответы на вопрос 1
Neuroware
@Neuroware
Программист в свободное от работы время
Это выглядит как огромный костыль, какую задачу должен был решать данный код?
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы