我不喜欢WPF无法以不区分大小写的方式解释文本。
是否有任何工具(即VS插件)可以使用我的VB .NET代码并为我处理区分大小写的问题?
编辑:现在举例。
输入:
<Dockpanel DockPanel.Dock="Bottom">
<Label Content="(c) blahblah" HorizontalAlignment="Left" Name="Label2" VerticalAlignment="Bottom" Opacity=".75" Background="White" DockPanel.Dock="bottom"/>
</DockPanel>
输出:
<DockPanel DockPanel.Dock="Bottom">
<Label Content="(c) blahblah" HorizontalAlignment="Left" Name="Label2" VerticalAlignment="Bottom" Opacity=".75" Background="White" DockPanel.Dock="Bottom"/>
</DockPanel>
答案 0 :(得分:5)
这有点像尝试使用C#而没有;或没有尖括号的XAML。区分大小写是XAML语言和WPF绑定系统的固有部分。如果您的VB代码在WPF中使用它时会导致问题,请打开Option Strict并修复代码中不一致的外壳。
答案 1 :(得分:1)
我认为WPF不是问题所在。
如果您需要验证数据并从问题中删除案例,请在比较之前将所有字符串转换为Upper或Lower。
如果您需要更改TextBox在WPF中的运行方式,请创建自己继承的TextBox并覆盖Text属性或修改绑定属性中的setter以修改它接收的任何值,例如
public string Name
{
get { return this._name; }
set
{
this._name = value.ToUpper();
OnPropertyChanged("Name");
}
}
如果没有关于这个问题的更多信息,我不确定还有什么建议。
答案 2 :(得分:0)
我不确定您要尝试实现的目标,但在检查用户名时遇到了区分大小写问题。我们的标准是SimpsonHJ,但有些用户会以simpsonhj或SIMPSONHJ身份登录他们的机器。所以我创建了一个变量,将发现的用户名更改为全部大写
private string un = Environment.UserName.ToUpper();
答案 3 :(得分:0)
简单易用 如果必须比较两个字符串。 一个可以存储在列表,字符串中或为某个变量,其他字符串由用户在文本框中输入。 然后只需使用上移或下移 这些将仅针对compair_values将字符串首先转换为大写或小写。 例如
string s = "ram" ;
string p = "Ram" ;
if(s.ToUpper()==p.ToUpper())
{
Console.WriteLine("String matched");
MessageBox.Show("String matched");
}
else
{
Console.WriteLine("Not matched");
MessageBox.Show("Not matched");
}
尝试一下,您将得到答案