mirror of
				https://github.com/nsnail/spectre.console.git
				synced 2025-11-04 10:35:27 +08:00 
			
		
		
		
	* Adding a dark mode * Adding reference for types to summary pages * Adding API Reference * Adding modifiers to methods/fields/etc * Minimizing files input * Caching a lot of the output pages * Cache only for each execution * Adding API references to existing docs
		
			
				
	
	
		
			36 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			36 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
Title: Selection
 | 
						|
Order: 1
 | 
						|
Description: "The **SelectionPrompt** can be used when you want the user to select a single item from a provided list."
 | 
						|
Reference: 
 | 
						|
    - T:Spectre.Console.SelectionPrompt`1
 | 
						|
    - M:Spectre.Console.AnsiConsole.Prompt``1(Spectre.Console.IPrompt{``0})
 | 
						|
---
 | 
						|
 | 
						|
The `SelectionPrompt` can be used when you want the user to select
 | 
						|
a single item from a provided list.
 | 
						|
 | 
						|
<?# AsciiCast cast="selection" /?>
 | 
						|
 | 
						|
<?# Alert ?>
 | 
						|
 Using prompts inside
 | 
						|
  status or progress displays, are not supported.
 | 
						|
<?#/ Alert ?>
 | 
						|
 | 
						|
## Usage
 | 
						|
 | 
						|
```csharp
 | 
						|
// Ask for the user's favorite fruit
 | 
						|
var fruit = AnsiConsole.Prompt(
 | 
						|
    new SelectionPrompt<string>()
 | 
						|
        .Title("What's your [green]favorite fruit[/]?")
 | 
						|
        .PageSize(10)
 | 
						|
        .MoreChoicesText("[grey](Move up and down to reveal more fruits)[/]")
 | 
						|
        .AddChoices(new[] {
 | 
						|
            "Apple", "Apricot", "Avocado", 
 | 
						|
            "Banana", "Blackcurrant", "Blueberry",
 | 
						|
            "Cherry", "Cloudberry", "Cocunut",
 | 
						|
        }));
 | 
						|
 | 
						|
// Echo the fruit back to the terminal
 | 
						|
AnsiConsole.WriteLine($"I agree. {fruit} is tasty!");
 | 
						|
``` |