本文整理汇总了C#中GLib.List.Where方法的典型用法代码示例。如果您正苦于以下问题:C# List.Where方法的具体用法?C# List.Where怎么用?C# List.Where使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类GLib.List
的用法示例。
在下文中一共展示了List.Where方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: RefreshDocklets
void RefreshDocklets ()
{
if (DockletsTileview == null)
return;
AbstractDockItemProvider selectedProvider = null;
DockletTile selectedTile = (DockletTile) DockletsTileview.CurrentTile ();
if (selectedTile != null)
selectedProvider = selectedTile.Provider;
DockletsTileview.Clear ();
docklettiles.ForEach (tile => tile.Dispose ());
docklettiles.Clear ();
if (ActiveDock == null)
return;
string query = DockletSearch.InnerEntry.Text.ToLower ();
// build a list of DockletTiles, starting with the currently active tiles for the active dock,
// and the available addins
DockletTile currentTile = null;
foreach (AbstractDockItemProvider provider in ActiveDock.Preferences.ItemProviders) {
string providerID = PluginManager.AddinIDFromProvider (provider);
if (string.IsNullOrEmpty (providerID))
continue;
docklettiles.Add (new DockletTile (providerID, provider));
if (provider == selectedProvider)
currentTile = docklettiles.Last ();
}
docklettiles = docklettiles.Concat (PluginManager.AvailableProviderIDs.Select (id => new DockletTile (id))).ToList ();
if (docklet_show_cmb.Active == (int) DockletShowStates.Active)
docklettiles = docklettiles.Where (t => t.Enabled).ToList ();
else if (docklet_show_cmb.Active == (int) DockletShowStates.Disabled)
docklettiles = docklettiles.Where (t => !t.Enabled).ToList ();
docklettiles = docklettiles.Where (t => t.Description.ToLower ().Contains (query) || t.Name.ToLower ().Contains (query)).ToList ();
foreach (DockletTile docklet in docklettiles)
DockletsTileview.AppendTile (docklet);
if (currentTile != null)
DockletsTileview.Select (docklettiles.IndexOf (currentTile));
}
示例2: RefreshHelpers
void RefreshHelpers ()
{
if (HelpersTileview == null)
return;
HelpersTileview.Clear ();
List<Helper> helpers = DockServices.Helpers.Helpers;
foreach (HelperTile tileobject in helpertiles.Where (to => !helpers.Contains (to.Helper))) {
helpertiles.Remove (tileobject);
tileobject.Dispose ();
}
helpertiles = helpers.Where (helper => !helpertiles.Exists (to => helper == to.Helper))
.Select (h => new HelperTile (h))
.Union (helpertiles).ToList ();
string query = HelperSearch.InnerEntry.Text.ToLower ();
IEnumerable<HelperTile> showinghelpertiles = helpertiles
.Where (hto => hto.Name.ToLower ().Contains (query) || hto.Description.ToLower ().Contains (query))
.OrderBy (hto => hto.Name);
if (helper_show_cmb.Active == (uint) HelperShowStates.Usable)
showinghelpertiles = showinghelpertiles.Where (hto => hto.Helper.IsAppAvailable);
else if (helper_show_cmb.Active == (uint) HelperShowStates.Enabled)
showinghelpertiles = showinghelpertiles.Where (hto => hto.Enabled);
else if (helper_show_cmb.Active == (uint) HelperShowStates.Disabled)
showinghelpertiles = showinghelpertiles.Where (hto => !hto.Enabled);
foreach (HelperTile tileobject in showinghelpertiles)
HelpersTileview.AppendTile (tileobject);
SetupHelperAlignment ();
}