Skip to main content

Posts

Showing posts with the label WPF

Simple Data Binding in WPF

අපි කලින් ලියුමක WPF වල layouts ලේසියෙන් හදාගන්නේ කොහොමද කියල බැලුවා කට්ටියට මතක ඇති නේද. ඉතින් අද අපි බලන්න යන්නේ මෙතනින් තව පොඩ්ඩක් ඉස්සරහට යන්නේ කොහොමද කියල. ඒ කියන්න අද අපි බලමු අපි මේ හදාගත්ත client window එක කොහොමද අපේ business layer එකත් එක්ක connect කරන්නේ කියල. ඒකට තියෙන සරලම සහ හොඳම විදිහ තමා මේ Data Binding කියල කියන්නේ. Data Binding වලින් අපිට පුළුවන් අපේ Business Layer එකයි UI එකයි අතරේ data auto update කරන්න. Data Binding කොටස් දෙකක් තියෙනවා Unidirectional කියන්නේ source එකේ ඉඳල target එකට හරි target එකේ ඉඳල source එකට හරි එක පැත්තකට විතරක් data update වෙන එකට. Bidirectional කියන්නේ source එකෙන් target එකටයි target එකෙන් source එකයි දෙපැත්තටම data update වෙන එකට. ඒ වගේම binding target එක හැම වෙලේම DependencyProperty එකක් වෙන්න ඕනෙ.(DependencyProperty එකක් කියන්නේ සරලව ගත්තොත් object එකක අපිට runtime එකේදී වෙනස් කරන්න පුළුවන් property එකක්.) ඉස්සෙල්ලම අපි මෙන්න මේ පහල තියෙන Window එක හදාගෙන ඉමු. මේකට ඕනෙ කරන XAML markup එක තමා පහල තියෙන්නේ. <Windo

WPF Layout Techniques - Grids

අපි දන්නවා WPF එහෙම නැත්නම් Windows Presentation Foundation කිව්වම Windows applications ගොඩක් ලස්සනට හදාගන්න Microsoft එකෙන් අපිට දීල තියෙන technology එකක්. ඉතින් අපි අද බලමු ඕනෙම application එකක් හදද්දී අපිට ගොඩක් වැදගත් දෙයක් වෙන control layout එක ලේසියෙන් කරගන්නේ කොහොමද කියල. මේකට අපි පාවිච්චි කරන්නේ Grid කියන control එක. අපි අද අපේ උදාහරණය විදිහට ගන්නේ සරල Login form එකක්. කට්ටියට මතක නේ අපි web pages හදද්දී <table></table> tags වලින් layout හදනවා මේ වැඩෙත් ටිකක් විතර එකට සමානයි. වැඩි කතා නැතුව බලමුකෝ අපි මොකද්ද කරන්න හදන්නේ කියලා. Login Window දැන් අපි බලමු මේක හදාගන්නේ කොහොමද කියල. අපි මුලින්ම කරගන්න ඕනෙ වැඩේ තමයි අපේ basic layout එක grid එකක් පාවිච්චි කරලා හදාගන්න එක. මේ තියෙන්නේ ඒකට ඕනෙ කරන xaml code එක. <Window x:Class="WpfBasics.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Title="Login to WPF Sample" Height

WPF Multiline TextBox

ඔන්න අපි හදන්නේ අදත් පුංචි Tip එකක් දෙන්න. මේ ප්‍රශ්නේ මට අවේ මම පොඩි WPF Window එකක් design කර කර ඉන්නකොට. අපි කොහොමද WPF වලදී Multiline TextBox එකක් හදාගන්නේ කියන එක තමා ඉතින් ප්‍රශ්නේ. මුලින්ම මම කලේ ඉතින් නිකම්ම TextBox control එකක් දාගෙන එකේ තියෙන Properties එක එක බැලුව මේ වැඩේ කරගන්න විදියක් තියෙනවද කියල. මොකද Windows Forms වල නම් තියෙනවා නේ Property එකක් කෙලින්ම Multiline කියලම. ඒක true කරපු ගමන් බඩු වැඩ. ඒත් කරුමෙට මේකේ එහෙම Property එකක් තිබ්බෙත් නෑ. පස්සේ මම ඉතින් කවදත් අපේ උදව්වට ඉන්න Google ගෙන් අහල බැලුව. මෙන්න උත්තරේ. ඇත්තටම අපිට WPF වලදී මේක ගොඩ දාගන්න Properties 3 ක් ඕනේ වෙනවා. පහල තියෙන්නේ ඒකට අදාල xaml markup එක. <TextBox Name="TextDescription" Height="60" Width="250" Margin="10,0,0,0" VerticalScrollBarVisibility ="Visible" AcceptsReturn ="True" TextWrapping ="Wrap"/> ඔන්න අපට වැදගත් වෙන එව්වා underline කරලම තියෙනවා. VerticalScrollBarVisibility  කියල කියන්නේ අපිට මේකේ scroll bar එ