C#’ta Uzak Masaüstü Nesnesindeki Pano Özelliğini Kapatmak

C# Uzak Masaüstü Nesnesinde Panoyu Kapatmak için ne yazık ki var olanlar RDP nesnelerinin hiçbirinden yararlanamadım.  Sürücülere erişim, akıllı kart, vb. tüm özellikler var ama ne yazık ki panoyu kullan yok! Ya da ben bulamadım! =] Ben de kendimce kolay bir çözüm üreteyim dedim… =]

Yalnızca iki satırla bu işi bitireceğiz! İlk yapmamız gereken bir Timer’ı Uzak Masaüstü’nü kullanacağımız Form’a eklemek ve Form’un Load olayıyla beraber Timer’ı enabled etmek. Bundan sonrası için Timer’ın Interval’ini 1000 yapmak ve Tick olayına şu kodu yazmak:

Clipboard.Clear();

Evet, gayet basit! =] Her on saniyede bir uzak masaüstünden yapılabilecek kopyalama işlemlerini dolaylı olarak engellemiş olacak! =]

Daha iyi öneriler ve çözümlere açığım. Haydi kolay gelsin.

C#’ta İşi Kolaylaştıran Operatörler (?? ve ?:)

C#’ın tüm operatörlerinin olduğu MSDN sayfasına aşağıdaki bağlantıdan gidebilirsiniz:

http://msdn.microsoft.com/en-us/library/6a71f45d.aspx

Benim özellikle değinmek istediğim operatörler ? ve ?: operatörleri.

Örneğin bir if sorgusuyla girilen bir sayının ikinin katı olup olmadığına bakalım:

if (Convert.ToInt32(txtGirilenSayi.Text) % 2 == 0) MessageBox.Show(“girdiğiniz sayı ikinin katı”);
else MessageBox.Show(“girdiğiniz sayı ikinin katı değil”);

Burada eğer girilen sayının ikiye bölümünden kalan sıfırsa, yani ikiye tam bölünüyorsa ikinin katı olduğunu, değilse ikinin katı olmadığını ekrana yazdırdık. Peki bunu söz konusu operatörlerle nasıl yaparız? Şöyle:

int girilensayi = Convert.ToInt32(txtGirilenSayi.Text);
string sonuc = (girilensayi % 2 == 0) ? “ikinin katı” : “ikinin katı değil”;
MessageBox.Show(sonuc);

Parantezin içindeki değerin sonucu değer true ise, soru işaretindne sonraki ilk bölüm, false ise ikinci bölüm çalışacaktır. Bu operatörümüz ?: operatörü olarak bilinir.

Gelelim  ??  operatörüne:

int? personelMaasi = null;
int girilensayi = Convert.ToInt32(txtGirilenSayi.Text);
if (girilensayi > 5) personelMaasi = 1000;
int personelHakEdisi = personelMaasi ?? 0;
MessageBox.Show(“Hak ettiğiniz maaş: ” + personelHakEdisi.ToString() + ” Lira”);

Burada dikkat edilmesi gereken yer int? ile tanımlama yapılması. Eğer bu tanımlamayı yapmazsanız operatörün mantıksal karşılaştırma yapması mümkün olmaz. Yani kısaca kullanamaz; hata alırız. Asıl amacımız kod içinde tanımlaması yapılan ama değer girilmemiş olma olasılığı bulunan bir değişkeni kullanmaya kalktığımızda hata çıkmasını engellemek. Eğer personelMaasi değişkeni girilenSayi 5ten büyük olmasaydı 0 değerini alacaktı. Çünkü int personelHakEdisi = personelMaasi ?? 0;  satırındaki ??, personelMaasi null’sa 0 değerini personelHakEdisi’ne yazıyor. Şimdi “o zaman null vermeyiz, 1 verirz geçeriz” diyebilirsiniz. =] Elbette burada null senaryo gereği yazıldı. İsterseniz personelMaasi’nın değerini 250 yapıp işlem satırına geldiğinizde halen 250 ise 0 olsun şeklinde de kullanabilirsiniz.

Haydi kolay gelsin.

C# TextBox’ta Özel Karakter Yazılmasını Engellemek (Handle Special Character)

C# TextBox’ta Özel Karakter Yazılmasını Engellemek (Handle Special Character) için Key_Press olayına

e.Handled = Char.IsPunctuation(e.KeyChar);

yazmak yeterli olacaktır.

DevExpress XtraGrid’te (C# GridView) Satırdaki Yazıları Kalınlaştırmak ve Fontunu Değiştirmek (Row \ Font \ Bold)

DevExpress XtraGrid’te (C# GridView) Satırdaki Yazıları Kalınlaştırmak (Row \ Font \ Bold) için GridView’in Row_Style olayına şu kodları yazıyoruz:

GridView View = sender as GridView;
if (e.RowHandle >= 0)
{
string okunma = View.GetRowCellDisplayText(e.RowHandle , View.Columns[“Istek_Okundu”]);
if (okunma == “Okunmadı”)
{

e.Appearance.Font = new Font(e.Appearance.GetFont() ,
FontStyle.Bold);

}
}

Istek_Okundu alanı Okunmadı olarak kalın olarak yazılacaktır. Eğer font tipini değiştirmek istersek e.Appearance.GetFont() yerine istediğimiz fontu yazabiliriz.

DevExpress XtraGrid’te (C# GridView) Satır Genişliğini Ayarlamak (Row Width)

DevExpress XtraGrid’te (C# GridView) Satır Genişliğini Ayarlamak (Row Height) için “Açıklama” ya da benzeri en geniş olacak alanınızın ColumnEdit’ine bir MemoEdit ekliyoruz:

Bu işlemi gerçekleştirebilmek için alanın ColumnEdit alanına MemoEdit ekliyoruz (GridView’da sağ tıklayın \ Run Designer \ Columns \ Alan Adı \ Column Edit \ New \ MemoEdit).

MemoEdit’in LineCount’una yazacağımız sayı kadar satır genişletir. O yüzden genişliği burada belirtiyoruz. Yazıların otomatik olarak aşağıya doğru kayması için Wrap özelliğimizi etkinleştiriyoruz. Bunun için: (GridView’da sağ tıklayın \ Run Designer \ Columns \ Alan Adı \AppearanceCell \  TextOptions \ WordWrap = Wrap). şeklinde ayarlıyoruz. Yüksekliğini de (Width) belirtip yüksekliğini sabit hale getiriyoruz. Bunun için:  (GridView’da sağ tıklayın \ Run Designer \ Columns \ Alan Adı \ OptionsColumn \ FixedWidth=true) şeklinde ayarlıyoruz. Daha sonra GridView’in OptionsView ayarlarına giriyoruz RowAutoWidth özelliğini true yapıyoruz ve işlem tamam.

DevExpress (C#) GridView’da Satırın Yazı Rengini Değiştirmek (row color change)

DevExpress C# GridView Yazı Rengini Değiştirmek (color change) için GridView’in RowStyle olayını kullanmamız gerekiyor. Örnekk ullanım aşağıdaki gibidir:

private void gridvIstekler_RowStyle(object sender ,

DevExpress.XtraGrid.Views.Grid.RowStyleEventArgs e)
{
GridView View = sender as GridView;
if (e.RowHandle >= 0)
{
string okunma = View.GetRowCellDisplayText(e.RowHandle , View.Columns[“Istek_Okundu”]);
if (okunma == “Okunmadı”)
{
e.Appearance.BackColor = Color.DeepSkyBlue;
e.Appearance.BackColor2 = Color.White;
}
}
}

İstek_Okundu alanı eğer “Okunmadı”ysa rengini BackColor ve BackColor2’de belirttiğimiz renklerle değiştiriyor.

DevExpress GridView’da İstenilen Alanı Şifre Karakteriyle Maskelemek (Password Mask)

Bu işlemi gerçekleştirebilmek için şifre karakterini atayacağımız alanın ColumnEdit alanına TextEdit ekliyoruz (GridView’da sağ tıklayın \ Run Designer \ Columns \ Alan Adı \ Column Edit \ New \ TextEdit). Eklediğimiz TextEdit’in adı repositoryItemTextEdit1olarak atanacaktır. Ekleme işlemini gerçekleştirdikten sonra hemen repositoryItemTextEdit1’in altından PasswordChar değerine istediğimiz karakteri atayabiliriz.

%d blogcu bunu beğendi: