我想在循环(可能)中单击.xaml.cs文件的按钮时在xaml文件中创建文本框。我已计算出每个文本框的边距,但不知道如何绑定代码。 Here's the image of the xaml design view and what I'm trying to achieve. The window will have one textbox for choices appear and the loop will create another and another each time the add choice button is clicked.
有人可以帮忙吗?我刚刚学习wpf。谢谢
答案 0 :(得分:0)
假设绑定代码意味着如何将ns
添加到面板中。为此,您需要将文本框添加到面板的TextBox
属性中。
如果您需要在初始化表单时执行此操作,请将代码放在Children
之后的表单构造函数中。
以下是一个示例,如何以编程方式执行此操作,以响应点击事件:
的Xaml:
InitializeComponent();
C#:
<StackPanel Name="pn_Content" Orientation="Vertical">
<Button Click="btn_Add_TextBox_Click">Add Textbox</Button>
</StackPanel>
那就是它。
答案 1 :(得分:0)
首先,将所有当前文本框放在容器中,例如名为stackPanel的堆栈面板。 然后将控件添加到面板的子项中:
require 'openssl'
require 'base64'
module AESCrypt
def self.encrypt(message, password)
Base64.encode64(self.encrypt_data(message.to_s.strip,
self.key_digest(password), nil, "AES-256-CBC"))
end
def self.decrypt(message, password)
base64_decoded = Base64.decode64(message.to_s.strip)
self.decrypt_data(base64_decoded, self.key_digest(password), nil, "AES-256-CBC")
end
def self.key_digest(password)
OpenSSL::Digest::SHA256.new(password).digest
end
def self.decrypt_data(encrypted_data, key, iv, cipher_type)
aes = OpenSSL::Cipher::Cipher.new(cipher_type)
aes.decrypt
aes.key = key
aes.iv = "0000000000000000"
aes.update(encrypted_data) + aes.final
end
def self.encrypt_data(data, key, iv, cipher_type)
aes = OpenSSL::Cipher::Cipher.new(cipher_type)
aes.encrypt
aes.key = key
aes.iv = "0000000000000000"
aes.update(data) + aes.final
end
end
请参考以下问题:
WPF: How to dynamically Add Controls in dynamically created WPF Window