سلام به همه دوستان گرامی

دوستان من قابلیت DrawItem کنترل ListBox مو تغییر دادم مشکلی که هستش اینه که متن داخل ListBox م Justify نمیشه ممنون میشم یه راهنمایی بکنید من کدشم میزارم که بهتر متوجه بشید
اگه ملاحظه بفرمایید متوجه خواهید که سمت چپ متنم ترازبندیش نامنظمه و من میخام مثل سمت راست هردو سمت justify بشه ممنون میشم به راهنمایی بکنید


private void listBox1_DrawItem_4(object sender, DrawItemEventArgs e)
{
if ((e.Index < 0) || (e.Index >= listBox1.Items.Count))
{
return;
}

//----------------------------------

//----------------------------------
var item = (object[])listBox1.Items[e.Index];
var text = (string)item[0];
var date = (string)item[1];

var user = (string)item[2];
var time = (string)item[3];
var username = (string)item[4];
var format = new StringFormat(StringFormat.GenericDefault);
format.FormatFlags |= StringFormatFlags.NoClip | StringFormatFlags.DirectionRightToLeft;
format.Trimming = StringTrimming.EllipsisCharacter;
var size = Size.Round(e.Graphics.MeasureString(text, listBox1.Font, 885, format));
size.Width = Math.Max(30, size.Width);
size.Height = Math.Min(100, size.Height);
var rect = new Rectangle(e.Bounds.Right - 885 - 20, e.Bounds.Top, 885, size.Height + 170);
var rect1 = new Rectangle(e.Bounds.Right - 885 - 45, e.Bounds.Top + 50, 885, size.Height + 160);
var rect2 = new Rectangle(e.Bounds.Right - 885 - 20, e.Bounds.Top, 885, 40);
var rectimage = new Rectangle(e.Bounds.Right - 885, e.Bounds.Top + 5, 30, 30);
var rectuser = new Rectangle(e.Bounds.Right -450 , e.Bounds.Top + 3, 400, 30);
/*var renderer = new VisualStyleRenderer(VisualStyleElement.ToolTip.Bal loon.Normal);
renderer.DrawBackground(e.Graphics, rect);*/
e.Graphics.FillRectangle(new SolidBrush(Color.FromArgb(255, 255, 255)), rect);
if (((e.State) & DrawItemState.Selected)== DrawItemState.Selected)
{
//label1.Text=e.Index.ToString () +text;
}
if (user=="Y")
{

e.Graphics.FillRectangle(new SolidBrush(Color.FromArgb(242, 249, 255)), rect2);
e.Graphics.DrawRectangle(new Pen(Color.FromArgb(204, 228, 252)), rect);

}
else if (user=="N")

{
//248, 248, 248

e.Graphics.FillRectangle(new SolidBrush(Color.FromArgb(248, 248, 248)), rect2);
e.Graphics.DrawRectangle(new Pen(Color.FromArgb(221, 221, 221 )), rect);
}
rect.Inflate(-5, -5);
rect1.Inflate(-5, -5);

rect.Offset(0, 3);
rect1.Offset(0, 3);
e.Graphics.DrawString(text, new Font(new FontFamily("Cairo"), 10, FontStyle.Bold), Brushes.Black, rect1, format);
format.LineAlignment = StringAlignment.Far;

using (var font = new Font(listBox1.Font.FontFamily, 8))
{
e.Graphics.DrawString( time+ " " + date , font, Brushes.Gray, rect, format);
}
e.Graphics.DrawImage(Properties.Resources.user, rectimage);
e.Graphics.DrawString(username , new Font (new FontFamily("Cairo"),8), new SolidBrush(Color.FromArgb (84, 84, 84)), rectuser, format);

}