コード例 #1
0
        public static TabItem RequireTabItem(SchemaObject target, Style tabItemStyle, TabControl tabControl, Db2SourceContext dataSet)
        {
            ISchemaObjectWpfControl ctrl = target.Control as ISchemaObjectWpfControl;

            if (ctrl != null)
            {
                ctrl.Target = dataSet.Refresh(target);
                return(ctrl.Parent as TabItem);
            }

            lock (TabItemLock)
            {
                if (ctrl != null)
                {
                    return(ctrl.Parent as TabItem);
                }
                ctrl = NewControl(target, tabControl);
                if (ctrl == null)
                {
                    return(null);
                }
                TabItem item = NewTabItem(tabControl, target.FullName, ctrl as UIElement, tabItemStyle);
                item.Tag = target;
                return(item);
            }
        }