私はそのような状況を持っています。1つのクラスのオブジェクトを保持しているリストがあります(このオブジェクトには、「名前」、「タイプ」、「インデックス」、「値」、「ステータス」、「パラメーター」の6つのプロパティがあります)。後で、それを gridView にバインドしています。ここで、このプロパティごとにフィルターを作成できるようにしたいと考えています。たとえば、テキストボックス「名前」に挿入できるようにしたい:ジョン、そして、ジョンがいる行のみをgridViewに表示したいと思います。
2 つ目は、フィルタを混在させたいということです。たとえば、「名前」を「ジョン」に、「インデックス」を 5 に設定し、「ジョン」を「インデックス」を 5 に設定します。
これどうやってするの?
今、すべてをリストに挿入する機能しかありません。このオブジェクトは、クラス WholeLine の Middle プロパティ内に格納されます。
Correction method = new Correction();
while ((line = sr.ReadLine()) != null)
{
string[] _columns = line.Split(",".ToCharArray());
object returnValue;
MyColumns mc = new MyColumns();
mc.Time = _columns[0];
mc.Information = _columns[1];
mc.Description = _columns[2];
if (String.IsNullOrEmpty(mc.Information) )
{ continue; }
else
{
returnValue = method.HandleRegex(mc.Information);
}
Line main = new Line();
main.LeftColumn = mc.Time;
main.Middle= returnValue;
main.RightColumn = mc.Description;
list3.Add(main);
}
編集:
私の状況ではそれほど単純ではありません (私は思います...)。後で、クラスからメソッド HadleRegex を呼び出しますCorrection
。以下に、それがどのように見えるかを示します。
class Correction
{
private MoreInfor _MoreInfor = new MoreInfor();
public MoreInfor MoreInfor { get { return _ID; } }
Correction sk = new Correction();
Match matches = Regex.Match(newStr, @"\b(?:complete\b)", RegexOptions.IgnoreCase);
if (matches.Success)
{
string[] lines = newStr.Split(Environment.NewLine.ToCharArray(), StringSplitOptions.RemoveEmptyEntries);
Regex regex1 = new Regex(@"^(?:(?<C0>Command) (?:answer|sent) from (?<C1>\S+) to (?<C2>\S+) (?<C3>.+))$");
var matches1 = lines.Select(line => regex1.Match(line));
foreach (var match in matches1)
{
sk._MoreInfor.Name= match.Groups["C1"].ToString();
sk._MoreInfor.Type = match.Groups["C2"].ToString();
sk._MoreInfor.Value = match.Groups["C3"].ToString();
sk._MoreInfor.Index = match.Groups["C4"].ToString();
}
}
return sk;
}
public class MoreInfo
{
public string Name{ get; set; }
public string Type { get; set; }
public string Index { get; set; }
public string Value { get; set; }
public string Status { get; set; }
public string Parameter { get; set; }
}
この返されたクラスの値Correction
は、後でメイン クラスから渡され、クラスのプロパティにreturnValue
追加されますMiddle
Line
本当にズレてたらごめんなさい!