0

文と段落をピッグ ラテン語に変換するシンプルなコンソール アプリを作成しました。それほど役立つわけではありませんが、練習用です。

次に、追加の演習として Windows ストア アプリに入れたいと思います。2 つのテキスト ボックスと 1 つのボタンを使用して VS でデザインをモックアップしましたが、すべてを「装備」する方法がわかりません。

ここにオケーがあります:

public static class Program
{
    public static void Main(string[] args)
    {
        Console.Write("Enter your text: ");

        var text = "";
        text = Console.ReadLine();
        piglatinize(text);

    }

    public static string piglatinize(string text)
    {

        string[] words = text.Split(' ');
        string result = string.Empty;

        foreach (string word in words)
        {
            char first = word[0];
            string rest = word.Length > 1 ? word.Substring(1) : string.Empty;

            switch (word[word.Length - 1])
            {
                case '?':
                case '!':
                case '.':
                case ',':
                case '\'':
                case ':':
                case ';':

                    result += rest.Substring(0, (rest.Length - 1)) + first + "ay" + word[word.Length - 1] + " ";
                    break;
                default:
                    result += rest + first + "ay ";
                    break;
            }
        }

        Console.WriteLine("Here is your Pig Latin:");
        Console.WriteLine(result);

        return result;

    }
}
4

1 に答える 1

0

これらすべてに Visual Studio を使用している場合、最も簡単な方法は、テンプレートの例の 1 つを取得して、そこから開始することです。

を実装するクラスが必要になりますiNotifyPropertyChanged

あなたのクラスは次のように単純に見えるかもしれません:

public class PigLatinConverter : INotifyPropertyChanged
{
    private string _originalText;

    public string OriginalText
    {
        get { return _originalText; }
        set 
        {
            _originalText = value;
            OnPropertyChanged("OriginalText");
        }
    }

    private string _piglatinizedText;

    public string PiglatinizedText
    {
        get { return _piglatinizedText; }
        set
        {
            _piglatinizedText = value;
            OnPropertyChanged("PiglatinizedText");
        }
    }

    public void ConvertOriginalText()  //your button calls this
    {
        //your pig latin logic here

        // set _piglatinizedText to your output
    }

    public event PropertyChangedEventHandler PropertyChanged;
    protected void OnPropertyChanged(string name)
    {
        PropertyChangedEventHandler handler = PropertyChanged;
        if (handler != null)
        {
            handler(this, new PropertyChangedEventArgs(name));
        }
    }
}

XAML の場合、テキスト ブロックを使用し、新しいプロパティをテキスト属性にバインドします。Visual Studio から例を取得すると、その助けになるはずです。

于 2013-10-25T05:35:03.040 に答える