using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows; using System.Windows.Controls; using System.Windows.Data; using System.Windows.Documents; using System.Windows.Input; using System.Windows.Media; using System.Windows.Media.Imaging; using System.Windows.Shapes; namespace ShrlAlgoStudio { /// /// GuidGeneratorView.xaml 的交互逻辑 /// public partial class GuidGeneratorView { public GuidGeneratorView() { InitializeComponent(); GenerateGuid(); } private void BtnGenerate_Click(object sender, RoutedEventArgs e) { GenerateGuid(); } private void BtnCopy_Click(object sender, RoutedEventArgs e) { if (!string.IsNullOrEmpty(ResultTextBox.Text)) { Clipboard.SetText(ResultTextBox.Text); StatusText.Text = "已复制到剪贴板!"; StatusText.Foreground = Brushes.Green; } } private void GenerateGuid() { // 1. 生成新的 GUID Guid newGuid = Guid.NewGuid(); // 2. 获取用户选择的格式 // 从 ComboBoxItem 的 Tag 属性中获取格式代码 (D, N, B, P, X) string format = "D"; // 默认为 D if (FormatComboBox.SelectedItem is ComboBoxItem selectedItem && selectedItem.Tag != null) { format = selectedItem.Tag.ToString(); } // 3. 格式化字符串 string result = newGuid.ToString(format); // 4. 处理大小写 // 注意:Hex(X) 格式通常包含大括号和0x,ToUpper会全部大写,符合常规需求 if (UpperCaseCheckBox.IsChecked == true) { result = result.ToUpper(); } else { result = result.ToLower(); } // 5. 显示结果 ResultTextBox.Text = result; // 重置状态栏提示 StatusText.Text = "生成成功"; StatusText.Foreground = Brushes.Black; } } }