PDA

View Full Version : treeview



smortazavi
دوشنبه 16 آبان 1384, 12:41 عصر
چطوری در ,righi to left treeview کنم؟

محمد میرمصطفی
پنج شنبه 19 آبان 1384, 00:42 صبح
کلمه Mirroring رو تو MSDN بگرد. اگه نشد، بهت می‏گم.

danial82
پنج شنبه 19 آبان 1384, 07:43 صبح
من پیدا کردم ولی در موردش اگه یه مقدار توضیح بدی ممنون میشم

محمد میرمصطفی
جمعه 20 آبان 1384, 18:43 عصر
همونطور که متوجه شدی، پاسخ اینه:

const int WS_EX_LAYOUTRTL = 0x400000;
const int WS_EX_NOINHERITLAYOUT = 0x100000;
protected override CreateParams CreateParams
{
get
{
CreateParams CP = base.CreateParams;
CP.ExStyle = CP.ExStyle | WS_EX_LAYOUTRTL | WS_EX_NOINHERITLAYOUT;
return CP;
}
}
یه API هست به نام SetWindowLong:

LONG SetWindowLong( HWND hWnd, int nIndex, LONG dwNewLong );
که یه مشت از اینطور کارا رو انجام میده. اینم تو MSDN هست. وقتی پارامتر دومشو GWL_EXSTYLE بذاری میتونی با ارسال WS_EX_LAYOUTRTL | WS_EX_NOINHERITLAYOUT پنجره یا هرچیزه دیگه رو که هندل داشته‏باشه، RighToLeft کنی، البته یه تعداد خیلی کمی محدودیت. ولی از اونجا که تو NET. اینکار اصطلاحا unmanaged هست، شما لزومی نداره مستقیما از API استفاده کنی، گرچه می‏تونی.

danial82
شنبه 21 آبان 1384, 07:11 صبح
آقا محمد ممنون ولی یه سوال
این دو مقدار

const int WS_EX_LAYOUTRTL = 0x400000;
const int WS_EX_NOINHERITLAYOUT = 0x100000;

برای RighToLeft کردن هر آبجکتی از همین مقادیر استفادخ میکنیم

محمد میرمصطفی
یک شنبه 22 آبان 1384, 00:22 صبح
تو #C هر controlی که درای این property باشه: CreateParams

danial82
یک شنبه 22 آبان 1384, 06:50 صبح
آقا دستت درد نکنه ممنون

محمد میرمصطفی
سه شنبه 24 آبان 1384, 02:36 صبح
قابلی نداشت.