---
title: "init(_:id:for:content:)"
framework: swiftui
role: symbol
role_heading: Initializer
path: "swiftui/windowgroup/init(_:id:for:content:)"
---

# init(_:id:for:content:)

Creates a data-presenting window group with a text view title and an identifier.

## Declaration

```swift
nonisolated init<D, C>(_ title: Text, id: String, for type: D.Type, @ContentBuilder content: @escaping (Binding<D?>) -> C) where Content == PresentedWindowContent<D, C>, D : Decodable, D : Encodable, D : Hashable, C : View
```

## Parameters

- `title`: The doc://com.apple.SwiftUI/documentation/SwiftUI/Text view to use for the group’s title.
- `id`: A string that uniquely identifies the window group. Identifiers must be unique among the window groups in your app.
- `type`: The type of presented data this window group accepts.
- `content`: A closure that creates the content for each instance of the group. The closure receives a binding to the value that you pass into the doc://com.apple.SwiftUI/documentation/SwiftUI/EnvironmentValues/openWindow action when you open the window. SwiftUI automatically persists and restores the value of this binding as part of the state restoration process.

## Discussion

Discussion The window group uses the specified content as a template to create each window in the group. The system uses the title to distinguish the window group in the user interface, such as in the name of commands associated with the group. important: The system ignores any text styling that you apply to the Text view title, like bold or italics. However, you can use the formatting controls that the view offers, like for localization, dates, and numerical representations. SwiftUI creates a window from the group when you present a value of the specified type using the openWindow action.

## See Also

### Identifying a data-driven window group

- [init(id:for:content:)](swiftui/windowgroup/init(id:for:content:).md)
