Esempio n. 1
0
        private void UCMultiLanguageMaintain_Loaded(object sender, RoutedEventArgs e)
        {
            facade = new MultiLanguageMaintainFacade(CPApplication.Current.CurrentPage);
            MultiLanguageDataContract multiLanguageData = new MultiLanguageDataContract();

            multiLanguageData.SysNo         = SysNo;
            multiLanguageData.BizEntityType = BizEntityType;

            facade.QueryMultiLanguageBizEntity(multiLanguageData, (s, args) =>
            {
                if (args.FaultsHandle())
                {
                    return;
                }

                List <MultiLanguageBizEntity> multiLanguageBizEntities = args.Result;

                MappingTable = multiLanguageBizEntities[0].MappingTable;

                for (int i = 0; i < multiLanguageBizEntities.Count; i++)
                {
                    LanguageExpander expander = new LanguageExpander(multiLanguageBizEntities[i], i, facade);
                    LayoutRoot.Children.Add(expander);
                }
            });
        }
Esempio n. 2
0
        public LanguageExpander(MultiLanguageBizEntity entity, int index, MultiLanguageMaintainFacade _facade)
        {
            TbLabelsList = new List <TextBlock>();
            TxtValueList = new List <TextBox>();

            TextBlock tbLabel;
            TextBox   txtValue;

            languageBizEntity = entity;
            this.facade       = _facade;
            this.IsExpanded   = true;
            this.Header       = entity.LanguageName;
            Grid.SetRow(this, index);

            rootGrid = new Grid();
            rootGrid.ColumnDefinitions.Add(new ColumnDefinition()
            {
                Width = GridLength.Auto
            });
            rootGrid.ColumnDefinitions.Add(new ColumnDefinition()
            {
                Width = GridLength.Auto
            });
            rootGrid.ColumnDefinitions.Add(new ColumnDefinition()
            {
                Width = new GridLength(560)
            });
            rootGrid.Margin = new Thickness(20, 5, 20, 5);

            #region 根据属性创建TextBlock+TextBox
            for (int i = 0; i < entity.PropertyItemList.Count; i++)
            {
                rootGrid.RowDefinitions.Add(new RowDefinition()
                {
                    Height = GridLength.Auto
                });

                var item = entity.PropertyItemList[i];

                if (item.InputType.Equals("S"))
                {
                    txtValue = new TextBox()
                    {
                        Tag       = item.Field,
                        MaxLength = item.MaxLength
                    };
                }
                else
                {
                    txtValue = new TextBox()
                    {
                        AcceptsReturn = true,
                        VerticalScrollBarVisibility = ScrollBarVisibility.Visible,
                        TextWrapping        = TextWrapping.Wrap,
                        Tag                 = item.Field,
                        HorizontalAlignment = HorizontalAlignment.Stretch,
                        MaxLength           = item.MaxLength,
                        Height              = 80
                    };
                }
                if (String.IsNullOrWhiteSpace(item.Value))
                {
                    txtValue.Text = String.Empty;
                }
                else
                {
                    txtValue.Text = item.Value;
                }

                tbLabel = new TextBlock()
                {
                    Text = item.Label,
                    HorizontalAlignment = HorizontalAlignment.Right,
                    Tag    = item.IsRequired,
                    Height = 20
                };

                if (item.IsRequired.Equals("Y"))
                {
                    tbLabel.Text = "*" + tbLabel.Text;
                }

                Grid.SetRow(tbLabel, i);
                Grid.SetRow(txtValue, i);

                Grid.SetColumn(tbLabel, 0);
                Grid.SetColumn(txtValue, 2);

                rootGrid.Children.Add(tbLabel);
                TbLabelsList.Add(tbLabel);
                rootGrid.Children.Add(txtValue);
                TxtValueList.Add(txtValue);
                rowCount++;
            }

            #endregion

            #region 创建保存按钮
            rootGrid.RowDefinitions.Add(new RowDefinition()
            {
                Height = GridLength.Auto
            });
            Button saveButton = new Button();
            saveButton.Click += new RoutedEventHandler(btnSave_Click);
            saveButton.HorizontalAlignment = HorizontalAlignment.Right;
            saveButton.VerticalAlignment   = VerticalAlignment.Top;
            saveButton.Height  = 20;
            saveButton.Width   = 60;
            saveButton.Content = "保存";
            Grid.SetRow(saveButton, rowCount);
            Grid.SetColumn(saveButton, 3);
            rootGrid.Children.Add(saveButton);
            #endregion

            this.Content = rootGrid;
        }