作成日: 2017/11/10 最終更新日: 2017/11/10
文書種別
技術情報
詳細
C1GanttViewでは、タスクをドラッグして他のタスク上でドロップすることで、自動的にリンク線を描画し、先行タスクと後行タスクを設定することができます。
このデフォルトのリンク機能を抑止し、タスク間のリンクを生成しないようにするには、以下の手順を実行します。
(1) C1GanttViewのShowLinksプロパティをFalseに設定します。
(2) C1GanttViewのBeforeEditTaskイベントとAfterEditTaskイベントを使用し、先行タスクを示すPredecessorsが存在する場合、編集の動作をキャンセルします。
※ただし、タスクのドラッグ中に描画されるリンク線の表示を止めることはできませんので、ご了承ください。
◎サンプルコード(VB)
◎サンプルコード(C#)
このデフォルトのリンク機能を抑止し、タスク間のリンクを生成しないようにするには、以下の手順を実行します。
(1) C1GanttViewのShowLinksプロパティをFalseに設定します。
(2) C1GanttViewのBeforeEditTaskイベントとAfterEditTaskイベントを使用し、先行タスクを示すPredecessorsが存在する場合、編集の動作をキャンセルします。
※ただし、タスクのドラッグ中に描画されるリンク線の表示を止めることはできませんので、ご了承ください。
◎サンプルコード(VB)
Dim cnt As Integer = 0
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
C1GanttView1.ShowLinks = False
End Sub
Private Sub C1GanttView1_BeforeEditTask(sender As Object, e As CancelTaskArgs) Handles C1GanttView.BeforeEditTask
cnt = e.Task.Predecessors.Count
End Sub
Private Sub C1GanttView1_AfterEditTask(sender As Object, e As CancelTaskArgs) Handles C1GanttView.AfterEditTask
If e.Task.Predecessors.Count <> cnt Then
e.Cancel = True
End If
End Sub
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
C1GanttView1.ShowLinks = False
End Sub
Private Sub C1GanttView1_BeforeEditTask(sender As Object, e As CancelTaskArgs) Handles C1GanttView.BeforeEditTask
cnt = e.Task.Predecessors.Count
End Sub
Private Sub C1GanttView1_AfterEditTask(sender As Object, e As CancelTaskArgs) Handles C1GanttView.AfterEditTask
If e.Task.Predecessors.Count <> cnt Then
e.Cancel = True
End If
End Sub
◎サンプルコード(C#)
int cnt;
private void Form1_Load(object sender, EventArgs e)
{
c1GanttView1.ShowLinks = false;
}
private void c1GanttView1_BeforeEditTask(object sender, CancelTaskArgs e)
{
cnt = e.Task.Predecessors.Count;
}
private void c1GanttView1_AfterEditTask(object sender, CancelTaskArgs e)
{
if (e.Task.Predecessors.Count != cnt)
{
e.Cancel = true;
}
}
private void Form1_Load(object sender, EventArgs e)
{
c1GanttView1.ShowLinks = false;
}
private void c1GanttView1_BeforeEditTask(object sender, CancelTaskArgs e)
{
cnt = e.Task.Predecessors.Count;
}
private void c1GanttView1_AfterEditTask(object sender, CancelTaskArgs e)
{
if (e.Task.Predecessors.Count != cnt)
{
e.Cancel = true;
}
}
旧文書番号
82436