本文整理汇总了C#中ICompletionSession.Filter方法的典型用法代码示例。如果您正苦于以下问题:C# ICompletionSession.Filter方法的具体用法?C# ICompletionSession.Filter怎么用?C# ICompletionSession.Filter使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ICompletionSession
的用法示例。
在下文中一共展示了ICompletionSession.Filter方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: ShowCompletion
private void ShowCompletion()
{
// If there is no active session
if (completionSession == null || completionSession.IsDismissed)
{
//the caret must be in a non-projection location
SnapshotPoint? caretPoint = textView.Caret.Position.Point.GetPoint(
textBuffer => (!textBuffer.ContentType.IsOfType("projection")), PositionAffinity.Predecessor);
if (caretPoint.HasValue)
{
// Trigger the completion session
completionSession = completionBroker.TriggerCompletion(textView);
// Attach to the active session events
if (completionSession != null)
{
//completionSession.Start();
completionSession.Dismissed += new System.EventHandler(OnActiveSessionDismissed);
completionSession.Committed += new System.EventHandler(OnActiveSessionCommited);
completionSession.Filter();
}
}
}
}
示例2: TriggerCompletionSession
internal void TriggerCompletionSession(bool completeWord)
{
Dismiss();
_activeSession = CompletionBroker.TriggerCompletion(_textView);
if (_activeSession != null) {
_activeSession.Filter();
if (completeWord &&
_activeSession.CompletionSets.Count == 1 &&
_activeSession.CompletionSets[0].Completions.Count == 1) {
_activeSession.Commit();
_activeSession = null;
} else {
_activeSession.Dismissed += new EventHandler(OnCompletionSessionDismissedOrCommitted);
_activeSession.Committed += new EventHandler(OnCompletionSessionDismissedOrCommitted);
}
}
}
示例3: StartSession
private void StartSession()
{
var caretPosition = wpfTextView.Caret.Position.Point.GetPoint(
buffer => (!buffer.ContentType.IsOfType("projection")), PositionAffinity.Predecessor);
if (!caretPosition.HasValue)
{
throw new InvalidOperationException("Cannot get carret point.");
}
session = autoCompletionHandlerProvider.CompletionBroker.CreateCompletionSession(
wpfTextView,
caretPosition.Value.Snapshot.CreateTrackingPoint(caretPosition.Value.Position, PointTrackingMode.Positive),
true);
session.Dismissed += SessionDismissed;
session.Start();
if (session != null)
{
session.Filter();
}
}
示例4: Filter
private void Filter()
{
if (_currentSession == null || _currentSession.SelectedCompletionSet == null)
return;
_currentSession.Dismiss();
_currentSession = null;
StartSession();
if (_currentSession != null)
_currentSession.Filter();
}