/// <summary>
        /// Edit Box
        /// </summary>

        void RenameView(Point p, string initialText, Control[] controls, EditText t)
        {
            if (m_bUsingTextBox)
                return;
            m_bUsingTextBox = true;
            m_et = t;

            m_controls = new Control[controls.GetLength(0)];
            controls.CopyTo(m_controls, 0);

            m_tb.Text = initialText;
            this.m_tabControl.Parent.Controls.Add(m_tb);
            m_tb.BringToFront();
            m_tb.Focus();
            m_tb.Location = p;
            m_tb.Show();
        }
示例#2
0
        /// <summary>
        /// Translate controls using the current assembly translation XML. It matches the control name.
        /// </summary>
        /// <param name="controls">Controls to translate.</param>
        /// <param name="xmlName">Subelement inside the XML file.</param>
        public static void TranslateControls(Control.ControlCollection controls, string xmlName)
        {
            string assemblyName = Assembly.GetCallingAssembly().ManifestModule.Name;
            assemblyName = assemblyName.Substring(0, assemblyName.LastIndexOf('.'));    // Remove extension

            Control[] controlArray = new Control[controls.Count];
            controls.CopyTo(controlArray, 0);

            TranslateControls(controlArray, xmlName, assemblyName);
        }
示例#3
0
        /// <summary>
        /// Fills the instance with the given controls in the two arrays.
        /// Both arrays must have the same size. Otherwise an <see cref="ArgumentException"/>
        /// will be thrown.
        /// </summary>
        /// <param name="labels">Array with <see cref="Label"/> objects</param>
        /// <param name="controls">Array with <see cref="Control"/> objects</param>
        public void Fill(Label[] labels, Control[] controls)
        {
            if (labels.Length != controls.Length)
                throw new ArgumentException("Number of specified labels must match the number of specified controls.", "labels");

            Clear();

            _labels = new Label[labels.Length];
            labels.CopyTo(_labels, 0);
            _controls = new Control[controls.Length];
            controls.CopyTo(_controls, 0);

            for (int i = 0; i < _labels.Length; i++)
                this.Controls.Add(_labels[i]);
            for (int i = 0; i < _controls.Length; i++)
                this.Controls.Add(_controls[i]);

            RefreshLayout();
        }