コード例 #1
0
ファイル: SignControl.cs プロジェクト: sgstair/ledsign
        void AddSignElement(SignContentType e)
        {
            SignElementUI se = new SignElementUI();

            se.ContentType = e;
            se.Content     = SignContentFactory.Create(e);
            try
            {
                se.ContentControl = SignContentFactory.CreateControl(e);
                se.ContentControl.BindToContent(se.Content);
                se.ContentControl.ContentChange += ContentControl_ContentChange;
            }
            catch
            {
                se.ContentControl = null; // If there are errors, don't use the UI. (allow controls without UI)
            }

            ISignContent[] newElements;
            lock (Elements)
            {
                Elements.Add(se);

                listBox1.Items.Add(se.Content.Summary);

                newElements = Elements.Select(i => i.Content).ToArray();
            }

            Animate.SetContent(newElements);
        }