示例#1
0
        /// <summary>
        /// Adds a new property row.
        /// </summary>
        /// <param name="label">Property name.</param>
        /// <param name="prop">Property control.</param>
        /// <param name="value">Initial value.</param>
        /// <returns>Newly created row.</returns>
        public PropertyRow Add(String label, Property.Base prop, String value = "")
        {
            PropertyRow row = new PropertyRow(this, prop);

            row.Dock          = Pos.Top;
            row.Label         = label;
            row.ValueChanged += OnRowValueChanged;

            prop.SetValue(value, true);

            m_SplitterBar.BringToFront();
            return(row);
        }
示例#2
0
        /*public Base Add(string label, object value)
         * {
         *      switch (value.GetType()) {
         *      //case typeof()
         *      }
         *      PropertyRow<T> row = new PropertyRow<T>(this, prop);
         *      row.Dock = Pos.Top;
         *      row.Label = label;
         *      row.ValueChanged += OnRowValueChanged;
         *
         *      prop.SetValue(value, true);
         *
         *      // m_SplitterBar.BringToFront();
         *      return row;
         * }*/

        /// <summary>
        /// Adds a new property row.
        /// </summary>
        /// <param name="label">Property name.</param>
        /// <param name="prop">Property control.</param>
        /// <param name="value">Initial value.</param>
        /// <returns>Newly created row.</returns>
        public PropertyRow <T> Add <T>(string label, Property.Base <T> prop, T value = default(T))
        {
            PropertyRow <T> row = new PropertyRow <T>(this, prop);

            row.Dock          = Pos.Top;
            row.Label         = label;
            row.ValueChanged += OnRowValueChanged;

            prop.SetValue(value, true);

            // m_SplitterBar.BringToFront();
            return(row);
        }
示例#3
0
        /// <summary>
        /// Initializes a new instance of the <see cref="PropertyRow"/> class.
        /// </summary>
        /// <param name="parent">Parent control.</param>
        /// <param name="prop">Property control associated with this row.</param>
        public PropertyRow(Base parent, Property.Base prop)
            : base(parent)
        {
            PropertyRowLabel label = new PropertyRowLabel(this);
            label.Dock = Pos.Left;
            label.Alignment = Pos.Left | Pos.Top;
            label.Margin = new Margin(2, 2, 0, 0);
            m_Label = label;

            m_Property = prop;
            m_Property.Parent = this;
            m_Property.Dock = Pos.Fill;
            m_Property.ValueChanged += OnValueChanged;
        }
示例#4
0
        /// <summary>
        /// Initializes a new instance of the <see cref="PropertyRow"/> class.
        /// </summary>
        /// <param name="parent">Parent control.</param>
        /// <param name="prop">Property control associated with this row.</param>
        public PropertyRow(Base parent, Property.Base prop)
            : base(parent)
        {
            PropertyRowLabel label = new PropertyRowLabel(this);

            label.Dock      = Pos.Left;
            label.Alignment = Pos.Left | Pos.Top;
            label.Margin    = new Margin(2, 2, 0, 0);
            m_Label         = label;

            m_Property               = prop;
            m_Property.Parent        = this;
            m_Property.Dock          = Pos.Fill;
            m_Property.ValueChanged += OnValueChanged;
        }