امتیاز موضوع:
  • 0 رأی - میانگین امتیازات: 0
  • 1
  • 2
  • 3
  • 4
  • 5
TreeView
نویسنده پیام
hamidsina آفلاین
كاربر دو ستاره
**

ارسال‌ها: 210
موضوع‌ها: 67
تاریخ عضویت: بهمن ۱۳۸۶

تشکرها : 94
( 23 تشکر در 11 ارسال )
ارسال: #1
TreeView
با سلام
من يه مثال در مورد اضافه كردن زير شاخه ها در TreeView و همگام كردنش با ListView ميخوام
اگه امكانش برا دوستان هست لطفا برام بذ ارن
سپاسگذارم

۳۰-مرداد-۱۳۸۷, ۲۳:۲۰:۰۸
ارسال‌ها
پاسخ
Mamad2003 آفلاین
کاربر با تجربه
****

ارسال‌ها: 1,150
موضوع‌ها: 18
تاریخ عضویت: آذر ۱۳۸۲

تشکرها : 9
( 388 تشکر در 232 ارسال )
ارسال: #2
RE: TreeView
اسم لیست : lvwBuild
اسم treeview هست : tbView



کد:
Hashtable nodes = new Hashtable();

foreach (ListViewItem item in lvwBuild.Items)
{
string nodeName = item.Text;
string childName = "";
TreeNode newNode;

if (nodes[nodeName] == null)
{
newNode = new TreeNode(nodeName);
nodes[nodeName] = newNode;
tvView.Nodes.Add(newNode);
}
else
{
newNode = (TreeNode) nodes[nodeName];
}

if (item.SubItems.Count > 1)
{
childName = item.SubItems[1].Text;
TreeNode childNode = new TreeNode(childName);

if (nodes[childName] == null)
{
nodes[childName] = childNode;
newNode.Nodes.Add(childNode);
}
}

گويند بهشت و حور و کوثر باشد  ..  جوي می و شير و شهد و شکر باشد
پر کن قدح باده و بر دستم نه      ..   نقدي ز هزار نسيه خوشتر باشد  
۳۱-مرداد-۱۳۸۷, ۱۱:۴۴:۳۰
ارسال‌ها
پاسخ
تشکر شده توسط : hamidsina, ajlajlajl, sav68
hamidsina آفلاین
كاربر دو ستاره
**

ارسال‌ها: 210
موضوع‌ها: 67
تاریخ عضویت: بهمن ۱۳۸۶

تشکرها : 94
( 23 تشکر در 11 ارسال )
ارسال: #3
RE: TreeView
با سلام
mamadجان بسيار عالي بود . چند تا سوال ديگه در اين مورد هست كه ممنون ميشم اونها رو هم جواب بدين .
اگه بخايم يه آيتم به TreeViewاضافه كنيم خوب منويسيم
;(treeView1.Nodes.Add("A", "hamid",1

حالا اگه بخايم كه Arash و koorosh رو زير شاخه hamid قرار بديم از چه كدي استفاده ميكنيم؟

بعد هم كدي كه گذاشتيد آيتمهاي List رو توي Tree نشون ميده اگه بخوايم بر عكسش بشه راهش چيه كه وقتي گره ها رو باز ميكنيم آيتمهاي داخلش در List نمايان بشه
و اگر بخايم برا هر آيتم در List يه رويداد Click داشته باشيم راهش چيه؟
من و از اين كه زياد سوال كردم ببخشيد
متشكرم

(آخرین ویرایش در این ارسال: ۳۱-مرداد-۱۳۸۷, ۱۵:۴۹:۳۶، توسط hamidsina.)
۳۱-مرداد-۱۳۸۷, ۱۵:۴۵:۴۸
ارسال‌ها
پاسخ
ajlajlajl آفلاین
مدیر بازنشسته
*****

ارسال‌ها: 2,192
موضوع‌ها: 70
تاریخ عضویت: مهر ۱۳۸۴

تشکرها : 932
( 2618 تشکر در 1020 ارسال )
ارسال: #4
RE: TreeView
با اجازه آقا محمد.
hamidsina نوشته است:اگه بخايم يه آيتم به TreeViewاضافه كنيم خوب منويسيم
;(treeView1.Nodes.Add("A", "hamid",1
حالا اگه بخايم كه Arash و koorosh رو زير شاخه hamid قرار بديم از چه كدي استفاده ميكنيم؟
کد php:
TreeNode tn treeView1.Nodes.Add("A""hamid"1);
            
tn.Nodes.Add("A1""Arash"0);
            
tn.Nodes.Add("A2""koorosh"0); 

hamidsina نوشته است:بعد هم كدي كه گذاشتيد آيتمهاي List رو توي Tree نشون ميده اگه بخوايم بر عكسش بشه راهش چيه كه وقتي گره ها رو باز ميكنيم آيتمهاي داخلش در List نمايان بشه
کد php:
listView1.Items.Clear();
            foreach (
TreeNode node in e.Node.Nodes)
            {
                
listView1.Items.Add(node.Namenode.Text0);
            } 

hamidsina نوشته است:و اگر بخايم برا هر آيتم در List يه رويداد Click داشته باشيم راهش چيه؟
صراحتا رویدادی برای click برای هر آیتم نیست ولی شما میتونی با استفاده از رویدادهای ItemSelectionChanged یا SelectedIndexChanged اینکارو بکنید.

میزان رای دشمن است!
[تصویر:  cff100.png]
(آخرین ویرایش در این ارسال: ۳۱-مرداد-۱۳۸۷, ۲۱:۴۱:۰۵، توسط ajlajlajl.)
۳۱-مرداد-۱۳۸۷, ۲۱:۳۴:۰۵
وب سایت ارسال‌ها
پاسخ
تشکر شده توسط : hamidsina, sav68
hamidsina آفلاین
كاربر دو ستاره
**

ارسال‌ها: 210
موضوع‌ها: 67
تاریخ عضویت: بهمن ۱۳۸۶

تشکرها : 94
( 23 تشکر در 11 ارسال )
ارسال: #5
RE: TreeView
واقعا دستتون درد نكنه خيلي كمكم كردين
فقط خواهش ميكنم يه توضيح بيشتري در مورد سوال آخري بدين
متشكرم و مرسي

۳۱-مرداد-۱۳۸۷, ۲۲:۳۰:۲۹
ارسال‌ها
پاسخ
ajlajlajl آفلاین
مدیر بازنشسته
*****

ارسال‌ها: 2,192
موضوع‌ها: 70
تاریخ عضویت: مهر ۱۳۸۴

تشکرها : 932
( 2618 تشکر در 1020 ارسال )
ارسال: #6
RE: TreeView
رویداد SelectedIndexChanged وقتی اتفاق میفته که مجموعه System.Windows.Forms.ListView.SelectedIndices تغییر پیدا کنه یا به عبارت دیگه وقتی مجموعه آیتم های انتخاب شده تغییر بکنه یعنی یکی دیگه انتخاب بشه یا یکی از انتخاب در بیاد. البته این رویداد نمیگه که چی تغییر کرده.
رویداد ItemSelectionChanged وقتی اتفاق میفته که حالت انتخاب بودن برای یه آیتم تغییر کنه (انتخاب بشه یا از انتخاب بیرون بیاد). این رویداد مشخص میکنه که کدوم آیتم این اتفاق براش افتاده.

برای این کار فکر کنم ItemSelectionChanged بهتر باشه.مثلا این:
کد php:
private void listView1_ItemSelectionChanged(object senderListViewItemSelectionChangedEventArgs e)
        {
            
MessageBox.Show("Item :" e.Item.Text " is " + (e.IsSelected?"Selected":"Deselected"));
        } 
میاد دقیقا میگه که چه آیتمی الان انتخاب شد و چه آیتمی از انتخاب در اومد.

میزان رای دشمن است!
[تصویر:  cff100.png]
۰۱-شهریور-۱۳۸۷, ۱۰:۰۷:۵۴
وب سایت ارسال‌ها
پاسخ
تشکر شده توسط : hamidsina, sav68
hamidsina آفلاین
كاربر دو ستاره
**

ارسال‌ها: 210
موضوع‌ها: 67
تاریخ عضویت: بهمن ۱۳۸۶

تشکرها : 94
( 23 تشکر در 11 ارسال )
ارسال: #7
RE: TreeView
باز هم از اين كه اين سولات رو با نهايت زيبايي و حوصله پاسخ دادين ازتون تشكر ميكنم
مرسي
خدا نگهدار

۰۱-شهریور-۱۳۸۷, ۱۲:۱۸:۵۴
ارسال‌ها
پاسخ


پرش به انجمن:


کاربرانِ درحال بازدید از این موضوع: 7 مهمان

صفحه‌ی تماس | IranVig | بازگشت به بالا | | بایگانی | پیوند سایتی RSS