PDA

View Full Version : چگونه متن text کنترل combobox رو وسط چین کنم .



harani
یک شنبه 15 مرداد 1391, 15:52 عصر
90801

متن کنترل کامبو باکسم چگونه به وسط بیارم ؟

Parham.D
دوشنبه 16 مرداد 1391, 06:37 صبح
خاصیت TextAlign نداره. فکر کنم باید یک UserControl بسازید که از ComboBox ارث بری داره و این خاصیت در اون تعریف کنید.

h_assefi
دوشنبه 16 مرداد 1391, 11:59 صبح
90801

متن کنترل کامبو باکسم چگونه به وسط بیارم ؟



سلام دوست عزیز
من یک راه حل دارم فقط کدش به زبان VB.net هست. خودت به C#‎ تبدیلش کن.
اول یک کلاس توی همون پروژت بزار و بعدش کد تبدیل شده زیر را داخل اون کلاس قرار بده و بعدش از کامپوننت درست شده استفاده کن
نیازی به توضیح بیشتر داشتی بگو

Public Class Class1

Inherits ComboBox
Sub New()
Me.DrawMode = Windows.Forms.DrawMode.OwnerDrawFixed
Me.DropDownStyle = ComboBoxStyle.DropDownList
End Sub

Private Sub CenteredComboBox_DrawItem(ByVal sender As Object, ByVal e As System.Windows.Forms.DrawItemEventArgs) Handles Me.DrawItem
e.DrawBackground()
Dim txt As String = ""
If e.Index >= 0 Then txt = Me.Items(e.Index).ToString
TextRenderer.DrawText(e.Graphics, txt, e.Font, e.Bounds, e.ForeColor, TextFormatFlags.HorizontalCenter)
e.DrawFocusRectangle()
End Sub


End Class