Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -24,8 +24,7 @@ Inheritance, together with encapsulation and polymorphism, is one of the three p

The following illustration shows a class `WorkItem` that represents an item of work in some business process. Like all classes, it derives from <xref:System.Object?displayProperty=nameWithType> and inherits all its methods. `WorkItem` adds five members of its own. These include a constructor, because constructors are not inherited. Class `ChangeRequest` inherits from `WorkItem` and represents a particular kind of work item. `ChangeRequest` adds two more members to the members that it inherits from `WorkItem` and from <xref:System.Object>. It must add its own constructor, and it also adds `originalItemID`. Property `originalItemID` enables the `ChangeRequest` instance to be associated with the original `WorkItem` to which the change request applies.

![Class Inheritance](../../../csharp/programming-guide/classes-and-structs/media/class_inheritance.png "Class_Inheritance")
Class inheritance
![Diagram that shows class inheritance](./media/inheritance/class-inheritance-diagram.png)

The following example shows how the class relationships demonstrated in the previous illustration are expressed in C#. The example also shows how `WorkItem` overrides the virtual method <xref:System.Object.ToString%2A?displayProperty=nameWithType>, and how the `ChangeRequest` class inherits the `WorkItem` implementation of the method.

Expand Down
4 changes: 2 additions & 2 deletions docs/csharp/programming-guide/concepts/async/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -98,9 +98,9 @@ The following characteristics summarize what makes the previous example an async
For more information about asynchrony in previous versions of the .NET Framework, see [TPL and Traditional .NET Framework Asynchronous Programming](../../../../standard/parallel-programming/tpl-and-traditional-async-programming.md).

## <a name="BKMK_WhatHappensUnderstandinganAsyncMethod"></a> What happens in an async method
The most important thing to understand in asynchronous programming is how the control flow moves from method to method. The following diagram leads you through the process.
The most important thing to understand in asynchronous programming is how the control flow moves from method to method. The following diagram leads you through the process:

![Trace an async program](../../../../csharp/programming-guide/concepts/async/media/navigationtrace.png "NavigationTrace")
![Diagram that shows tracing an async program.](./media/index/navigation-trace-async-program.png)

The numbers in the diagram correspond to the following steps.

Expand Down
4 changes: 2 additions & 2 deletions docs/csharp/programming-guide/concepts/linq/sorting-data.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,9 @@ ms.assetid: d93fa055-2f19-46d2-9898-e2aed628f1c9
# Sorting Data (C#)
A sorting operation orders the elements of a sequence based on one or more attributes. The first sort criterion performs a primary sort on the elements. By specifying a second sort criterion, you can sort the elements within each primary sort group.

The following illustration shows the results of an alphabetical sort operation on a sequence of characters.
The following illustration shows the results of an alphabetical sort operation on a sequence of characters:

![LINQ Sorting Operation](../../../../csharp/programming-guide/concepts/linq/media/linq_ordering.png "LINQ_Ordering")
![Graphic that shows an alphabetical sort operation.](./media/sorting-data/alphabetical-sort-operation.png)

The standard query operator methods that sort data are listed in the following section.

Expand Down
2 changes: 1 addition & 1 deletion docs/framework/docker/console.md
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,7 @@ Windows containers are supported on [Windows 10 Anniversary Update](https://www.

You need to have Docker for Windows, version 1.12 Beta 26 or higher to support Windows containers. By default, Docker enables Linux based containers; switch to Windows containers by right clicking the Docker icon in the system tray and select **Switch to Windows containers**. Docker will run the process to change and a restart may be required.

![Windows-Containers](./media/console/SwitchContainer.png)
![Screenshot of the Windows container menu option.](./media/console/windows-container-option.png)

## Building the application
Typically console applications are distributed through an installer, FTP, or File Share deployment. When deploying to a container, the assets need to be compiled and staged to a location that can be used when the Docker image is created.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ The following scenario shows a Windows Communication Foundation (WCF) client and

An intranet Web service displays human resources information. The client is a Windows Form application. The application is deployed in a domain with a Kerberos controller securing the domain.

![Transport security with Windows authentication](../../../../docs/framework/wcf/feature-details/media/securedbywindows.gif "SecuredByWindows")
![Transport security with Windows authentication](./media/transport-security-with-windows-authentication/secured-windows-authentication.gif)

|Characteristic|Description|
|--------------------|-----------------|
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -178,9 +178,9 @@ To view tracking records, follow these steps.

6. Right-click the **Analytic** node and select **Refresh.** Tracking records should be visible in the center pane.

The following image shows tracking events in the event viewer.
The following image shows tracking events in the event viewer:

![Event Viewer showing tracking records](./media/trackingeventviewer.PNG "TrackingEventViewer")
![Screenshot of the Event Viewer showing tracking records.](./media/configuring-tracking-for-a-workflow/tracking-event-viewer.png)

### Registering an application-specific provider ID

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -31,9 +31,9 @@ The <xref:System.Drawing.Text.PrivateFontCollection> class inherits from the <xr

If a given family/style combination is available, a <xref:System.Drawing.Font> object is constructed using that family and style. The first argument passed to the <xref:System.Drawing.Font.%23ctor%2A> constructor is the font family name (not a <xref:System.Drawing.FontFamily> object as is the case for other variations of the <xref:System.Drawing.Font.%23ctor%2A> constructor). After the <xref:System.Drawing.Font> object is constructed, it is passed to the <xref:System.Drawing.Graphics.DrawString%2A> method of the <xref:System.Drawing.Graphics> class to display the family name along with the name of the style.

The output of the following code is similar to the output shown in the following illustration.
The output of the following code is similar to the output shown in the following illustration:

![Fonts Text](./media/csfontstext7.png "csfontstext7")
![Screenshot that shows text in various fonts.](./media/how-to-create-a-private-font-collection/various-fonts-text-output.png)

Arial.tff (which was added to the private font collection in the following code example) is the font file for the Arial regular style. Note, however, that the program output shows several available styles other than regular for the Arial font family. That is because [!INCLUDE[ndptecgdiplus](../../../../includes/ndptecgdiplus-md.md)] can simulate the bold, italic, and bold italic styles from the regular style. [!INCLUDE[ndptecgdiplus](../../../../includes/ndptecgdiplus-md.md)] can also produce underlines and strikeouts from the regular style.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,9 +17,9 @@ You can use a <xref:System.Drawing.StringFormat> object to specify that text be
## Example
The following example assigns the value <xref:System.Drawing.StringFormatFlags.DirectionVertical> to the <xref:System.Drawing.StringFormat.FormatFlags%2A> property of a <xref:System.Drawing.StringFormat> object. That <xref:System.Drawing.StringFormat> object is passed to the <xref:System.Drawing.Graphics.DrawString%2A> method of the <xref:System.Drawing.Graphics> class. The value <xref:System.Drawing.StringFormatFlags.DirectionVertical> is a member of the <xref:System.Drawing.StringFormatFlags> enumeration.

The following illustration shows the vertical text.
The following illustration shows the vertical text:

![Fonts Text](./media/csfontstext5.png "csfontstext5")
![Graphic that shows vertical font text.](./media/how-to-create-vertical-text/vertical-font-text-graphic.png)

[!code-csharp[System.Drawing.FontsAndText#31](~/samples/snippets/csharp/VS_Snippets_Winforms/System.Drawing.FontsAndText/CS/Class1.cs#31)]
[!code-vb[System.Drawing.FontsAndText#31](~/samples/snippets/visualbasic/VS_Snippets_Winforms/System.Drawing.FontsAndText/VB/Class1.vb#31)]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ A Bézier spline is defined by four points: a start point, two control points, a

The following illustration shows the resulting Bézier spline along with its start point, control points, and endpoint. The illustration also shows the spline's convex hull, which is a polygon formed by connecting the four points with straight lines.

![Bezier Spline](./media/bezierspline1.png "BezierSpline1")
![Illustration of a Bezier Spline.](./media/how-to-draw-a-single-bezier-spline/bezier-spline-illustration.png)

[!code-csharp[System.Drawing.ConstructingDrawingCurves#31](~/samples/snippets/csharp/VS_Snippets_Winforms/System.Drawing.ConstructingDrawingCurves/CS/Class1.cs#31)]
[!code-vb[System.Drawing.ConstructingDrawingCurves#31](~/samples/snippets/visualbasic/VS_Snippets_Winforms/System.Drawing.ConstructingDrawingCurves/VB/Class1.vb#31)]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,19 +19,19 @@ ms.assetid: a0d9f178-43a4-4323-bb5a-d3e3f77ae6c1
[!code-csharp[System.Drawing.MiscLegacyTopics#61](~/samples/snippets/csharp/VS_Snippets_Winforms/System.Drawing.MiscLegacyTopics/CS/Class1.cs#61)]
[!code-vb[System.Drawing.MiscLegacyTopics#61](~/samples/snippets/visualbasic/VS_Snippets_Winforms/System.Drawing.MiscLegacyTopics/VB/Class1.vb#61)]

In the preceding code, the rectangle drawn from inside the container is transformed first by the world transformation of the container (rotation) and then by the world transformation of the <xref:System.Drawing.Graphics> object (translation). The rectangle drawn from outside the container is transformed only by the world transformation of the <xref:System.Drawing.Graphics> object (translation). The following illustration shows the two rectangles.
In the preceding code, the rectangle drawn from inside the container is transformed first by the world transformation of the container (rotation) and then by the world transformation of the <xref:System.Drawing.Graphics> object (translation). The rectangle drawn from outside the container is transformed only by the world transformation of the <xref:System.Drawing.Graphics> object (translation). The following illustration shows the two rectangles:

![Nested Containers](./media/csnestedcontainers1.png "csnestedcontainers1")
![Illustration that shows nested containers.](./media/using-nested-graphics-containers/nested-containers-illustration.png)

## Clipping in Nested Containers
The following example demonstrates how nested containers handle clipping regions. The code creates a <xref:System.Drawing.Graphics> object and a container within that <xref:System.Drawing.Graphics> object. The clipping region of the <xref:System.Drawing.Graphics> object is a rectangle, and the clipping region of the container is an ellipse. The code makes two calls to the <xref:System.Drawing.Graphics.DrawLine%2A> method. The first call to <xref:System.Drawing.Graphics.DrawLine%2A> is inside the container, and the second call to <xref:System.Drawing.Graphics.DrawLine%2A> is outside the container (after the call to <xref:System.Drawing.Graphics.EndContainer%2A>). The first line is clipped by the intersection of the two clipping regions. The second line is clipped only by the rectangular clipping region of the <xref:System.Drawing.Graphics> object.

[!code-csharp[System.Drawing.MiscLegacyTopics#62](~/samples/snippets/csharp/VS_Snippets_Winforms/System.Drawing.MiscLegacyTopics/CS/Class1.cs#62)]
[!code-vb[System.Drawing.MiscLegacyTopics#62](~/samples/snippets/visualbasic/VS_Snippets_Winforms/System.Drawing.MiscLegacyTopics/VB/Class1.vb#62)]

The following illustration shows the two clipped lines.
The following illustration shows the two clipped lines:

![Nested Container](./media/nestedcontainers2.png "nestedcontainers2")
![Illustration that shows a nested container with clipped lines.](./media/using-nested-graphics-containers/nested-container-clipped-lines.png)

As the two preceding examples show, transformations and clipping regions are cumulative in nested containers. If you set the world transformations of the container and the <xref:System.Drawing.Graphics> object, both transformations will apply to items drawn from inside the container. The transformation of the container will be applied first, and the transformation of the <xref:System.Drawing.Graphics> object will be applied second. If you set the clipping regions of the container and the <xref:System.Drawing.Graphics> object, items drawn from inside the container will be clipped by the intersection of the two clipping regions.

Expand All @@ -48,7 +48,7 @@ ms.assetid: a0d9f178-43a4-4323-bb5a-d3e3f77ae6c1

The following illustration shows the three strings. The strings drawn from the inner container and from the <xref:System.Drawing.Graphics> object are smoothed by antialiasing. The string drawn from the outer container is not smoothed by antialiasing because the <xref:System.Drawing.Graphics.TextRenderingHint%2A> property is set to <xref:System.Drawing.Text.TextRenderingHint.SingleBitPerPixel>.

![Nested Containers](./media/nestedcontainers3.png "nestedcontainers3")
![Illustration that shows the strings drawn from nested containers.](./media/using-nested-graphics-containers/nested-containers-three-strings.png)

## See also
- <xref:System.Drawing.Graphics>
Expand Down
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Original file line number Diff line number Diff line change
Expand Up @@ -31,9 +31,9 @@ Content that can be hosted by an [!INCLUDE[TLA#tla_xbap](../../../../includes/tl

- When the calling page returns to the called page, the called page is removed from navigation history to isolate one instance of a called page from another.

These behaviors are illustrated by the following figure.
These behaviors are illustrated by the following figure:

![Flow between calling page and called page](./media/structurednavigationoverviewfigure1.png "StructuredNavigationOverviewFigure1")
![Screenshot shows the flow between calling page and called page.](./media/structured-navigation-overview/flow-between-calling-page-called-page.png)

You can implement these behaviors by using a <xref:System.Windows.Navigation.PageFunction%601> as the called page.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -48,8 +48,7 @@ GoTo line

The following illustration shows one `Try` construction nested within another. Various branches among the blocks of the two constructions are indicated as valid or invalid.

![Graphic diagram of branching in Try constructions](../../../visual-basic/language-reference/statements/media/trybranching.gif "TryBranching")
Valid and invalid branches in Try constructions
![Graphic diagram of branching in Try constructions](./media/goto-statement/try-construction-branching.gif)

## Example
The following example uses the `GoTo` statement to branch to line labels in a procedure.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -98,7 +98,7 @@ Dim urlContents As String = Await client.GetStringAsync()
## <a name="BKMK_WhatHappensUnderstandinganAsyncMethod"></a> What Happens in an Async Method
The most important thing to understand in asynchronous programming is how the control flow moves from method to method. The following diagram leads you through the process.

![Trace an async program](../../../../csharp/programming-guide/concepts/async/media/navigationtrace.png "NavigationTrace")
![Diagram that shows tracing an async program.](./media/index/navigation-trace-async-program.png)

The numbers in the diagram correspond to the following steps.

Expand Down
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ A sorting operation orders the elements of a sequence based on one or more attri

The following illustration shows the results of an alphabetical sort operation on a sequence of characters.

![LINQ Sorting Operation](../../../../csharp/programming-guide/concepts/linq/media/linq_ordering.png "LINQ_Ordering")
![Graphic that shows an alphabetical sort operation.](./media/sorting-data/alphabetical-sort-operation.png)

The standard query operator methods that sort data are listed in the following section.

Expand Down