获取WPF窗体上的控件并赋值 八

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

获取WPF窗体上的控件并赋值八

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

using System.Windows;

using System.Windows.Controls;

using System.Windows.Data;

using System.Windows.Documents;

using System.Windows.Input;

using System.Windows.Media;

using System.Windows.Media.Imaging;

using System.Windows.Navigation;

using System.Windows.Shapes;

namespace 获取空间上的textBOX并赋值1

{

/// <summary>

/// MainWindow.xaml 的交互逻辑

/// </summary>

public partial class MainWindow : Window

{

public MainWindow()

{

InitializeComponent();

Start();

}

public void Start()

{

t1.Text = "张三";

t2.Text = "18";

t3.Text = "男";

}

private void btn_Click(object sender, RoutedEventArgs e)

{

this.SetNotEditable(this.g1.Children); //gridUCContent为最顶层Grid }

private void SetNotEditable(UIElementCollection uiControls)

foreach (UIElement element in uiControls)

{

if (element is TextBox)

{

(element as TextBox).IsEnabled = false;

t1.Text = string.Empty;

t2.Text = string.Empty;

t3.Text = string.Empty;

}

else if (element is Grid)

{

this.SetNotEditable((element as Grid).Children);

}

else if (element is Expander)

{

//此代码仅供参考

//在您的布局中,Expander或者其他不具有Children属性的控件的Content,若不是StackPanl或Grid,而是其他的子控件,则需要更多的判断

if ((element as Expander).Content is StackPanel)

{

StackPanel sa = (element as Expander).Content as StackPanel;

this.SetNotEditable(sa.Children);

}

else if ((element as Expander).Content is Grid)

{

Grid sa = (element as Expander).Content as Grid;

this.SetNotEditable(sa.Children);

}

}

else if (element is StackPanel)

{

this.SetNotEditable((element as StackPanel).Children);

}

else if (element is ScrollViewer)

{

StackPanel sp = (element as ScrollViewer).Content as StackPanel;

this.SetNotEditable(sp.Children);

//ScrollViewer不具有Children属性,无法对其进行遍历,但是具有Content属性,作为容器型控件,一般都可以通过这样的方法来解决。

} }

}

}

}

相关文档
最新文档