2017-03-03 6 views
0

私のデータベースでは、という名前のユーザー名の列に、この値があります。Jean-Andrew Pierre dbからこの値を取得するフィルタを作成する際に問題があります。入力するときにAndrew Jean Pierreです。ご覧のとおり、名前の順番が異なり、一部の文字が欠落しています。プログラムによるフィルタリングRadGridView

私はこれを試してみた:私は最後の行は除去されなければならないと考えてい

var operatorNameFilter = radGridView.Columns[nameof(Username)].ColumnFilterDescriptor; 
    if (string.IsNullOrEmpty(username)) 
    { 
     operatorNameFilter.Clear(); 
     return; 
    } 

    allOperatorsName = Regex.Split(username, @"\W+"); 
     foreach (var name in allOperatorsName) 
      operatorNameFilter.DistinctFilter.AddDistinctValue(name); 

     operatorNameFilter.FieldFilter.Filter1.Operator = FilterOperator.Contains; 
     operatorNameFilter.FieldFilter.Filter1.LogicalOperator = FilterCompositionLogicalOperator.And; 
     operatorNameFilter.FieldFilter.Filter1.Value = username; 

、しかし、何も起こりません

おかげで、 アンドレーア

答えて

0

の有無にかかわらず、私は答えを見つけました数回試してみてください:

 private void FilterByOperatorNames(RadGridView radGridView) 
     { 
      var operatorNameFilter = radGridView.Columns[nameof(Username)].ColumnFilterDescriptor; 
      if (string.IsNullOrEmpty(username)) 
      { 
       operatorNameFilter.Clear(); 
       return; 
      } 

      var allOperatorNames = Regex.Split(username, @"\W+"); 
      var userNamesCompositeFilter = new CompositeFilterDescriptor(); 
      foreach (var name in allOperatorNames) 
      { 
       var filterDescriptor = new FilterDescriptor(nameof(Username), FilterOperator.Contains, name); 
       userNamesCompositeFilter.FilterDescriptors.Add(filterDescriptor); 
      } 
      userNamesCompositeFilter.LogicalOperator = FilterCompositionLogicalOperator.And; 
      radGridView.FilterDescriptors.Add(userNamesCompositeFilter); 
     } 

私は他人を助けることを望みます。

関連する問題