C#的WPF如何在XAML那里定义textBox数组?

发布网友 发布时间:2024-10-23 23:12

我来回答

1个回答

热心网友 时间:2024-10-29 21:27

在WPF中,你不能直接在XAML中定义一个TextBox数组,但你可以通过使用ItemsControl或者DataTemplate来创建多个TextBox,然后在C#代码中使用集合来访问它们。下面是一个使用ItemsControl的例子:

XAML部分:

<Window x:Class="WpfApp.MainWindow"

xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"

xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"

Title="MainWindow" Height="350" Width="525">

<Grid>

<ItemsControl x:Name="textBoxCollection">

<ItemsControl.ItemTemplate>

<DataTemplate>

<TextBox Text="{Binding Path=Text, Mode=TwoWay}" />

</DataTemplate>

</ItemsControl.ItemTemplate>

</ItemsControl>

</Grid>

</Window>

C#部分:

using System.Collections.ObjectModel;

using System.Windows;

namespace WpfApp

{

public partial class MainWindow : Window

{

// 创建一个ObservableCollection来存储TextBox的数据

public ObservableCollection<TextBoxData> TextBoxes { get; set; }

public MainWindow()

{

InitializeComponent();

// 初始化集合

TextBoxes = new ObservableCollection<TextBoxData>

{

new TextBoxData(),

new TextBoxData(),

// 添加更多的TextBoxData对象

};

// 将集合绑定到ItemsControl

textBoxCollection.ItemsSource = TextBoxes;

}

}

// 定义一个类来存储每个TextBox的数据

public class TextBoxData

{

public string Text { get; set; }

}

}

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com