我一直在寻找这个问题的资源,但找不到我想要的。我在 WPF 中有一个 C# 应用程序,它使用触摸屏,在屏幕上为用户提供鼠标光标。问题是我想隐藏这个鼠标光标,但是当我在后端运行程序时,应用程序应该显示鼠标光标。
有没有人对从哪里开始有什么好的建议?
对于一个应用程序,我需要创建一个DataGrid与DataGridTextColumn它有MultiBinding。第一个Binding使用 ItemsSource 中给出的属性,第二个Binding应该使用我的 ViewModel 中的属性。
<DataGridTextColumn Header="Hourly wage" SortMemberPath="HourlyWage">
<DataGridTextColumn.Binding>
<MultiBinding StringFormat="{}{0}{1}">
<Binding Path="HourlyWage" />
<Binding Path="CurrencyUnit" />
</MultiBinding>
</DataGridTextColumn.Binding>
</DataGridTextColumn>
Run Code Online (Sandbox Code Playgroud)
在这种情况下HourlyWage是当前项目的属性。CurrencyUnit是我的 ViewModel 中的一个属性。如果我启动我的应用程序,此列是空的。那么我如何让它同时显示呢?
我使用 Catel 作为我的 MVVM 框架和 MahApps.Metro 作为我的 GUI。我无法在我的视图中创建 ViewModel,因为它由 Catel 处理。
问候, 斯特凡
我需要您的以下建议。
我有一个多维IList,其中包含具有索引,Id和Text的项目。通常,我知道Id的值,并据此获取Text。从数据库读取Id和Text值。
我们当前用于获取Text字段值的是:
foreach (Object myObj in List)
{
if (((MessageType)myObj).Id == id)
{
return ((MessageType)myObj).Text;
}
}
Run Code Online (Sandbox Code Playgroud)
当IList中的计数变大(大于32K)时,需要一些时间来处理。
问题:有没有一种方法可以有效地获取Text值而无需遍历IList?
我尝试没有成功的事情:
我不能使用AJAX / JQuery解决方案,因为它是一个现有的(活动)项目,并且重新编码将花费太多时间。
谢谢
编辑
@Ulugbek - 我已编辑提问以澄清.
我使用模式作为分隔符,需要通过使用C#在模式之间插入$来替换连续的模式出现,但目前它只替换模式的第一个实例.
除了多次替换之外,还有什么我需要做的吗?或者,我需要使用RegEx吗?
谢谢
String s = "ABCThis is a delimited valueABCABCABCAnd another delimited valueABC";
String.Replace("ABCABC", "ABC$ABC"); //misses second instance of the consecutive patterns instances
Run Code Online (Sandbox Code Playgroud)
结果:
ABCT这是一个分隔的值ABC $ ABCABCA和另一个分隔的值ABC
期望的结果:
ABCT这是一个分隔的值ABC $ ABC $ ABCA另一个分隔的值ABC
Ulugbek解决方案:
ABC $这是一个分隔的值ABC $ ABC $ ABC $和另一个分隔的值ABC $
谢谢
我有一个编码问题.我的MongoDB中有错误编码的文本.我的数据库中文本的源文件以ISO-8859-1编码.现在,在我的数据库中查看它时,一些字符被打破(变成' ').
目前,在从db检索文本时,我尝试了以下代码.
var t = Collection.FindOne(Query.EQ("id", "2014121500892"));
string message = t["b203"].AsString;
Console.WriteLine(ChangeEncoding(message));
Run Code Online (Sandbox Code Playgroud)
static string ChangeEncoding(string message)
{
System.Text.Encoding srcEnc = System.Text.Encoding.GetEncoding("ISO-8859-1");
System.Text.Encoding destEnc = System.Text.Encoding.GetEncoding("UTF-8");
byte[] bData = srcEnc.GetBytes(message);
byte[] bResult = System.Text.Encoding.Convert(srcEnc, destEnc, bData);
return destEnc.GetString(bResult);
}
Run Code Online (Sandbox Code Playgroud)
static string ChangeEncoding(string message)
{
File.WriteAllText("text.txt", message, Encoding.GetEncoding("ISO-8859-1"));
return File.ReadAllText("text.txt");
}
Run Code Online (Sandbox Code Playgroud)
db中的示例文本:
Box aus Pappef rA8-Lernk rtchen
我希望能够在控制台中将其打印为:
Box ausPappefürA8-Lernkärtchen
我有30个文件要在C中打开.
phantom_atn_1.bin phantom_atn_2.bin ... phantom_atn_30.bin
我正在尝试以下但它不起作用:
#include <math.h>
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
char filename[100],filename1[100],extension1[100];
int fileNum,frameNum;
main()
{
printf("Test1\n");
frameNum=30;
strcpy (extension1, ".bin");
for (fileNum=1;fileNum<frameNum+1;fileNum++)
{
printf("Test2\n");
strcpy (filename1, "phantom_atn_");
printf("Test3\n");
printf(filename1);
printf("\n");
printf(filename,"%d", fileNum);
printf("Test5\n");
sprintf(filename,"%d", fileNum);
printf("Test6\n");
strcat(filename1,extension1);
printf("Test7\n");
printf(filename);
printf("Test8\n");
printf(filename);
image1=fopen(filename,"rb");
}
};
Run Code Online (Sandbox Code Playgroud)
任何帮助将非常感激.
我使用这个代码,它取两个不同位置的经度和纬度,并计算我的代码之间的距离
protected void Button1_Click(object sender, EventArgs e)
{
double lat1= Convert.ToDouble(TextBox1.Text);
double lon1= Convert.ToDouble(TextBox2.Text);
double lat2= Convert.ToDouble(TextBox3.Text);
double lon2= Convert.ToDouble(TextBox4.Text);
var rlat1 = Math.PI * lat1/180;
var rlat2 = Math.PI * lat2/180;
var rlon1 = Math.PI * lon1/180;
var rlon2 = Math.PI * lon2 / 180;
var theta = lon1-lon2;
var rtheta = Math.PI * theta/180;
var dist = Math.Sign(rlat1) * Math.Sign(rlat2) + Math.Cos(rlat1) * Math.Cos(rlat2) * Math.Cos(rtheta);
dist = Math.Acos(dist);
dist = dist * 180/Math.PI;
dist = dist * …Run Code Online (Sandbox Code Playgroud) 所以我正在尝试制作一个简单的 CSGO 项目值到键值计算器。我是一个初学者程序员,我收到了这个错误。在谷歌搜索这个错误之后,我似乎找不到问题所在。任何人都可以提供帮助?
private void button1_Click(object sender, EventArgs e)
{
int itemValue = int.Parse(textBox1.Text);
int Keys = itemValue * 0.8 / 2.15;
label2.Text = "Value of item in keys:" + Keys;
}
Run Code Online (Sandbox Code Playgroud) c# ×7
wpf ×2
arrays ×1
c ×1
catel ×1
char ×1
data-binding ×1
encoding ×1
google-maps ×1
lookup ×1
mouse-cursor ×1
mvvm ×1
performance ×1
regex ×1
replace ×1
string ×1
unicode ×1