コード例 #1
0
        private void AddStateMachineActionsContainerToDetailViewLayout(DetailView detailView, string actionsContainerId, string caption)
        {
            if (detailView.Model.Items[actionsContainerId] != null)
            {
                return;
            }
            var    containerViewItem1   = detailView.Model.Items.AddNode <IModelActionContainerViewItem>(actionsContainerId);
            var    modelApplicationBase = ( ModelApplicationBase )detailView.Model.Application;
            string currentAspect        = modelApplicationBase.CurrentAspect;

            modelApplicationBase.SetCurrentAspect("");
            containerViewItem1.Caption = caption;
            modelApplicationBase.SetCurrentAspect(currentAspect);
            IModelViewLayoutElement viewLayoutElement   = detailView.Model.Layout.Count > 0 ? detailView.Model.Layout[0] : null;
            IModelLayoutViewItem    modelLayoutViewItem = !(viewLayoutElement is IModelLayoutGroup)
                                                   ? detailView.Model.Layout.AddNode <IModelLayoutViewItem>(containerViewItem1.Id)
                                                   : viewLayoutElement.AddNode <IModelLayoutViewItem>(containerViewItem1.Id);

            modelLayoutViewItem.ViewItem    = containerViewItem1;
            modelLayoutViewItem.ShowCaption = true;
            var containerViewItem2 = ( ActionContainerViewItem )detailView.AddItem(containerViewItem1);
        }