C# 在C中对两个参数使用字符串格式

C# 在C中对两个参数使用字符串格式,c#,datagridview,C#,Datagridview,在C语言中,我对两个参数使用字符串格式有一个问题。这里我想显示大于或小于我输入值的数据。对于未包含在该条件中的数据,我希望在另一个DataGridView中显示。有人能帮我吗?这是我的代码: StringBuilder sb = new StringBuilder(); StringBuilder sb2 = new StringBuilder(); OleDbConnection kon = new OleDbConnection(koneksinectar); DataTable dt =

在C语言中,我对两个参数使用字符串格式有一个问题。这里我想显示大于或小于我输入值的数据。对于未包含在该条件中的数据,我希望在另一个DataGridView中显示。有人能帮我吗?这是我的代码:

StringBuilder sb = new StringBuilder();
StringBuilder sb2 = new StringBuilder();

OleDbConnection kon = new OleDbConnection(koneksinectar);
DataTable dt = new DataTable();

OleDbDataAdapter adapter = new OleDbDataAdapter("select * from [Sheet1$]", kon);
DataSet coba = new DataSet();
adapter.Fill(coba);

var table = coba.Tables[0];
var view = new DataView(table);
var view2 = new DataView(table);

if (textBox1.Text != "")
{
  sb.Append(string.Format("[Saldo] > '{0}'", textBox1.Text));
}

if (textBox2.Text != "")
{
  if (sb.Length > 0)
  {
    sb.Append(" AND ");
  }

  sb.Append(string.Format("[Saldo] < '{0}'", textBox2.Text));
}

sb2.Append(string.Format(//here I want to do the formula textBox1.Text < [Saldo] > textBox2.Text)); //What code I must write ?

view.RowFilter = sb.ToString();
view2.RowFilter = sb2.ToString();

ViewNectarGV.DataSource = view;
NectarUnscheduleGV.DataSource = view2;

如果您使用的是C6,您只需

$"'{textBox1.Text}' < [Saldo] AND [Saldo] > '{textBox2.Text}'";
否则你可以

string.Format("'{0}' < [Saldo] AND [Saldo] > '{1}'",textBox1.Text, textBox2.Text);

如果您使用的是C6,您只需

$"'{textBox1.Text}' < [Saldo] AND [Saldo] > '{textBox2.Text}'";
否则你可以

string.Format("'{0}' < [Saldo] AND [Saldo] > '{1}'",textBox1.Text, textBox2.Text);

我不确定我是否理解你的要求,但我认为这是你想要的。 假设文本框应该是int,并且您正在尝试查找它们是否大于或小于

int num1;
int num2;
if (textBox1.Text != "" && textBox2.Text != "") {
    num1 = int.Parse(textBox1.Text);
    num2 = int.Parse(textBox2.Text);
   string str;
   if(num1 > num2) {
       str = string.Format("{0} > {1}", num1, num2);
   } else if(num1 < num2) {
       str = string.Format("{0} < {1}", num1, num2);
   } else {
       str = string.Format("{0} = {1}", num1, num2);
   }
}

我不确定我是否理解你的要求,但我认为这是你想要的。 假设文本框应该是int,并且您正在尝试查找它们是否大于或小于

int num1;
int num2;
if (textBox1.Text != "" && textBox2.Text != "") {
    num1 = int.Parse(textBox1.Text);
    num2 = int.Parse(textBox2.Text);
   string str;
   if(num1 > num2) {
       str = string.Format("{0} > {1}", num1, num2);
   } else if(num1 < num2) {
       str = string.Format("{0} < {1}", num1, num2);
   } else {
       str = string.Format("{0} = {1}", num1, num2);
   }
}

我已经尝试了您的代码,错误是无法对System.Boolean和System.String.执行'>'操作,现在应该可以了。在查询执行第一个小于之前,这将输出bool。然后对布尔值和第二个值执行大于运算。我尝试了您的代码,错误是无法对System.Boolean和System.String.执行'>'操作,现在应该可以了。在查询执行第一个小于之前,这将输出bool。然后对布尔值和第二个值进行大于运算。