OOPに関しては初心者です。昨日、私はいくつかの mvvm/wpf の例を読み込もうとしていましたが、もちろん問題が発生しました...以下のコードの一部を理解するのに問題があります:
{
class Person
{
public string FirstName { get; set; }
public string LastName { get; set; }
public string Addres { get; set; }
}
これはただの通常の Person クラスであり、特に変わったことはありません。問題は、以下のコードを理解できないことです。
private void SayHi_Click(object sender, RoutedEventArgs e)
{
Person person = new Person
{
FirstName=FirstName.Text,
LastName=LastName.Text,
Addres=Address.Text
};
私が理解していない部分は次のとおりです。
Person person = new Person
{
FirstName=FirstName.Text,
LastName=LastName.Text,
Addres=Address.Text
};
これが正確に何であるかはわかりません。すべての新しいオブジェクトは、次のように初期化する必要があると考えました: Class class = new Class();. 「new Person」の後に () がないのはなぜですか? () の代わりに {} があります。デフォルト、パラメーター化、静的、およびプライベートなコンストラクターを使用できることはわかっています。誰かが私にこれを説明できますか?以下の CodeProject のチュートリアルでも同様の状況です。
http://www.codeproject.com/Articles/165368/WPF-MVVM-Quick-Start-Tutorial
歌教室があります
public class Song
{
#region Members
string _artistName;
string _songTitle;
#endregion
#region Properties
/// The artist name.
public string ArtistName
{
get { return _artistName; }
set { _artistName = value; }
}
/// The song title.
public string SongTitle
{
get { return _songTitle; }
set { _songTitle = value; }
}
#endregion
}
もちろん、このクラスの View Model もあります。
public class SongViewModel
{
Song _song;
public Song Song
{
get
{
return _song;
}
set
{
_song = value;
}
}
public string ArtistName
{
get { return Song.ArtistName; }
set { Song.ArtistName = value; }
}
}
繰り返しますが、コードのこの部分は私には理解できません。
public class SongViewModel
{
Song _song;
public Song Song
なんとこの「Song_song;」は?これはソングクラスの対象ですか?そして、このプロパティ「Song Song」も変です… 知識不足なのかもしれません。